linux 安装 apache php,linux怎么安装httpd

大家好,今天来为大家分享linux 安装 apache php的一些知识点,和linux怎么安装httpd的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

linux php扩展安装方法

Gettext

1首先进入到php源码包中

cd/opt/php-5.1.2/ext/gettext

2在gettext文件夹下产生configure文件

/opt/php/bin/phpize

3配置编译

./configure--with-php-config=/opt/php/bin/php-config--with-gettext

make make install

4在/opt/php/lib/php/extensions下产生一个gettext.so文件

5确定 php.ini文件中的extension_dir=/opt/php/lib/php/extensions跟 extension=gettext.so

6重新编译 php

Zlib

1首先进入到php源码包中

cd/opt/php-5.1.2/ext/zlib

2在zlib文件夹下产生configure文件

/opt/php/bin/phpize

3配置编译

./configure--with-php-config=/opt/php/bin/php-config--with-zlib

make make install

4在/opt/php/lib/php/extensions下产生一个zlib.so文件

5确定 php.ini文件中的extension_dir=/opt/php/lib/php/extensions跟 extension=zlib.so

6重新编译 php

mbString

配制mbstring扩展

1运行/opt/php/bin/phpize

2进入到 php源码包中的ext/mbstring下

cd/opt/php-5.1.2/ext/mbstring

./configure--with-php-config=/opt/php/bin/php-config--enable-mbstring

make make install

3这样就在/opt/php/lib/php/extensions下生成一个mbstring.so

4然后保证extension_dir指向正确的位置,extension=php_mbstring.dll开启

这样mbstring就开启了

Mod_rewrite

以RHEL5为例

1)首次安装apache,在编译时增加--enable-rewrite选项。

如./configure--prefix=/usr/local/apachel--enable-so--enable-mods-shared=all--enable-rewrite--enable-cache

2)增加mod_rewrite模块

# find mod_rewrite.c//在apache的源码安装目录中寻找mod_rewrite.c文件

一般会在httpd-2.28/modules/mappers下

#/opt/httpd/bin/apxs-c mod_rewrite.c//apxs应指定绝对路径,在你当前正在使用apache的bin目录里

#/opt/httpd/bin/apxs-i-a-n mod_rewrite mod_rewrite.la

如果没有什么错误的话,应该在你的apache的modules目录中编译出一个mod_rewrite.so文件。

编辑httpd.conf文件,确认httpd.conf中已经包含mod_rewrite.so的加载语句,如下:

LoadModule rewrite_module modules/mod_rewrite.so

这时,你的apache应该已经支持rewrite了。

重启apache即可。

在Linux环境下,APACHE和PHP配置文件怎么设置(RPM包)

LAMP配置与应用 LAMP(Linux+Apache+Mysql+Php)配置:

Fedora 5已默认安装了php,可以使用rmp-q php查看其版本号

安装mysql客户端mysql(与perl-DBI包有依赖关系,要先安装)

安装mysql服务端mysql-server(与perl-DBD包有依赖关系,要先安装)

安装php支持mysql的模块php-mysql(与php-pdo包有依赖关系,要先安装)

Mysql的web管理工具phpMyAdmin

安装

下载并解压phpMyAdmin的包到某个web目录(或为phpMyadmin建立虚拟主机,将该包解压到虚拟主机目录)

#tar-xzvf phpMyAdmin-2.10.0.2-all-languages.tar.gz

执行下列命令:

#cd phpMyAdmin

#mkdir config#建立一个用来保存配置的目录

#chmod o+rw config#更改该目录的权限为属主可读写

#cp config.sample.inc.php config/#将当前目录下的config.sample.inc.php复制到config

#chmod o+w config/config.inc.php#使该文件的属主具有写权限

运行安装向导页面

在浏览器中打开scripts/setup.php,按照向导页面添入相关信息,最后单击“保存”,则所做的配置保存在config/config.inc.php中。(注:如果config子目录没有建立,或没有对该文件的写权限的话,则会出现"Cannot load or save configuration."的提示,这种情况下应选择“DownLoad”下载到本地,再上传到phpMyAdmin的主目录下),主要有以下样目需要添写:

User for config auth__________________

Password for config auth__________________

phpMyAdmin control user____________________

phpMyAdmin control user password______________________

phpMyAdmin database for advanced features__________________

配置成功保存的话,执行下面命令

#mv config/config.inc.php.#将配置文件移动到phpMyAdmin的主目录

#chmod o-r config.inc.php#为安全起见,移去该文件的读写权限

在浏览器中打开phpMyAdmin对应的站点

phpbb应用

注:以下头3步有关mysql的操作也可以在webmin中完成.

mysql的账号管理

1)要设置root用户的密码为123456,则在系统提示符下执行下面的命令:

#mysqladmin-u root-p password"123456"

2)要在mysql命令行客户端,设置root用户的密码为123456,则需执行以下命令:

mysql> use mysql;

mysql> update user set Password=password('123456') where User='root';

mysql> flush privileges;

3)如果要新增用户u1,给他授予对数据库bb中所有表(*)的所有权限(all),密码设为888888,则在mysql提示符下:

mysql> grant all on bb.* to'u1'@'localhost' identified by'888888';

如果root用户有密码,则进入mysql客户端需用下面的命令:#mysql-u root-p

新建phpbb论坛所要用到的数据库:mysql>create database XXX;

为phpbb所在目录新建虚拟主机

在浏览器中访问该虚拟主机,以安装phpbb

注意:在安装结尾,选择下载配置文件,自行上传.然后删除install,contrib两个目录

php配置实例

1.使用Apache配置基本的web站点,使客户端浏览简体中文网页能正常显示、新增支持的主页文件index.htm index.php default.htm default.html。最后要能在其它计算机上通过域名访问,比如www.yyy.net03.org。

2.在web站点下实现虚拟目录,即web站点的子目录,该子目录与主目录不一定是上下目录关系.同时,允许该目录有目录列表功能(即在没有找到主文件件的时候,显示当前目录下的列表).

3.实现Linux用户个人站点.

4.配置多个基于名称的虚拟主机,比如www1.yyy.net03.org,www2.yyy.net03.org。最后要能在其它计算机上通过域名访问。

5.配置多个基于IP的虚拟主机,比如lit.yyy.net03.org,mil.yyy.net03.org。最后要能在其它计算机上通过域名访问。

6.配置LAMP环境

7.配置phpbb论坛,并使该论坛可以通过形如bbs.yyy.net03.org的形式访问。

(*)8.删除系统原有Apache、php、Mysql项目,使用源文件安装最新版本的Apache、php、Mysql

利用源代码安装LAMP

首先要在相关网站获取Apache、Mysql、Php的源码包,一般扩展名为xxx.tar.gz.

删除系统原有Apache、php、Mysql项目,可能要用到下面的命令

# rpm-e xxx

# rpm-e xxx nodeps#不考虑依赖关系而删除xxx包

# rpm-e xxx yyy zzz#删除xxx,yyy,zzz包

如果无法删除一个RPM包,可以使用以下两步:

#rpm-f/var/lib/rpm

#rpm--rebuilddb

或:

#rpm-ivh--justdb xxx

#rpm-e xxx

1.安装Apache(httpd-2.2.8)

#./configure--enable-so

# make

# make install

#/usr/local/apache2/bin/apachectl start

2.安装Mysql(Mysql-5.0.22)

1)建立用户及组,如果在/etc/passwd中已有该用户,则下列操作可以省略

shell> groupadd mysql

shell> useradd-g mysql mysql

2)解压、配置编译安装

shell> gunzip< mysql-VERSION.tar.gz| tar-xvf-

shell> cd mysql-VERSION

shell>./configure--prefix=/usr/local/mysql#配置(指定mysql安装路径)

shell> make#编译

shell> make install#安装

3)配置mysql

shell> cp support-files/my-medium.cnf/etc/my.cnf#建立mysql配置文件

shell> cp support-files/mysql.server/etc/init.d/#建立mysql控制脚本

shell> cd/usr/local/mysql

shell> bin/mysql_install_db--user=mysql#建立mysql系统数据库

shell> chown-R root.#更改当前目录及子目录所有者

shell> chown-R mysql var#更改var目录及子目录所有者

shell> chgrp-R mysql.#更改当前目录及子目录所属组

4)启动mysql

shell> bin/mysqld_safe--user=mysql&#以后台模式运行mysqld服务

shell> chkconfig--list| less#查看服务列表

shell> chkconfig--add mysql.server#将mysql.server添加到服务列表

shell> chkconfig--list| less#查看服务列表

shell> service mysql.server restart

shell>/usr/local/mysql/bin/mysqladmin-u root-p password'888888'#更改mysql管理用户root的密码

3.安装php(php5 on Apache 2 Shared Module Version)

1) tar-zxvf php-NN.tar

2) cd php-NN

3)./configure--with-apxs2=/usr/local/apache2/bin/apxs--with-mysql=/usr/local/mysql

4) make

5) make install

6)建立php配置文件php.ini

# cp php.ini-dist/usr/local/lib/php.ini

7)编辑http配置文件 httpd.conf使之加载PHP模块

对于 PHP 4,添加下句:

LoadModule php4_module modules/libphp4.so

对于 PHP 5,添加下句:

LoadModule php5_module modules/libphp5.so

8)编辑http配置文件 httpd.conf,使之能解析扩展名为php的文件

AddType application/x-httpd-php.php.phtml

9)编辑http配置文件 httpd.conf,修改主页文件

DirectoryIndex index.php index.htm index.html

10)重启httpd服务

#/usr/local/apache2/bin/apachectl start

#/usr/local/apache/bin/apachectl-k start

11)编辑index.php文件,并在浏览器中访问该站点,如果出现关于php的当前配置信息(其中有mysql的配置项),表示LAMP安装成功。

$vi index.php

<?php

phpinfo()

?>

如何集成Linux、Apache、PHP4、FastCGI、Oracle、MySQL环境

一.准备工作要实现将Linux/Apache/PHP4/FastCGI/Oracle/MySQL环境集成,必需先准备好以下软件包:(一)数据库的Perl接口 1.perl5的Oracle数据库DBI驱动程序:DBD-Oracle-1.03.tar.gz 2.perl5的通用数据库接口程序:DBI-1.13.tar.gz 3.perl5的MySQL数据库DBI驱

一.准备工作

要实现将Linux/Apache/PHP4/FastCGI/Oracle/MySQL环境集成,必需先准备好以下软件包:

(一)数据库的Perl接口

1.perl5的Oracle数据库DBI驱动程序:DBD-Oracle-1.03.tar.gz

2.perl5的通用数据库接口程序:DBI-1.13.tar.gz

3.perl5的MySQL数据库DBI驱动程序:Msql-Mysql-modules-1.2209.tar.gz

(二)Oracle数据库

4.Oracle 8iR2(8.1.6) for Linux安装盘:oracle8161.tar.gz

(三)MySQL数据库

5.MySQL 3.22.32服务器程序包:MySQL-3.22.32-1.i386.rpm

6.MySQL客户端程序包:MySQL-client-3.22.32-1.i386.rpm

7.MySQL开发包(头文件/库文件):MySQL-devel-3.22.32-1.i386.rpm

8.MySQL共享库程序包:MySQL-shared-3.22.32-1.i386.rpm

(四)Apache服务器

9.Apache 1.3.12源码包:apache_1.3.12.tar.gz

(五)PHP模块

10.PHP 4.0.0源码包:php-4.0.0.tar.gz

(六)FastCGI模块

11.FastCGI模块源码包:mod_fastcgi_2.2.4.tar.gz

12.FastCGI的perl开发模块:FCGI-0.53.tar.gz共5页。

二.安装Oracle客户端

由于Oracle 8.1.6是在XWindows下安装的,所以必须是事先配置好XWindow,如果你的显卡不支持XWindow,也可以用exceed进行远程安装(这里不提远程如何安装)。

在此简单列出操作过程:

(一)设置环境变量:

在/etc/profile中加入:

export ORACLE_HOME=/opt/oracle8i/u01

export ORACLE_BASE=/opt/oracle8i

export ORACLE_OWNER=oracle

export ORACLE_SID=ORCL

export ORACLE_TERM=ansi

export PATH=$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280"

(二)建立oracle组和用户

#/usr/sbin/groupadd dba

#/usr/sbin/useradd-g dba oracle

#/usr/bin/passwd oracle

(三)创建$ORACLE_HOME目录

#mkdir/opt

#mkdir/opt/oracle8i

#mkdir/opt/oracle8i/u01

#chown-R oracle.dba/opt

(四)安装reacle 8iR2

以oracle用户登录,解开Oracle安装包:

$tar zxvf oracle8161.tar.gz

$startx启动XWindow界面,并打开一个rxvt终端窗口

$cd Oracle8iR2

$./runInstaller

此时出现Oracle安装界面,在安装时选择安装client/Application User(如果Oracle服务器不在本机上运行,另有专用机器),安装完毕后配置SQL*Net8并测试连接远程服务器通过即可。共5页。

三.安装MySQL服务器和客户端

以root身分进入,安装MySQL各个包:

#rpm-ivh MySQL-3.22.32-1.i386.rpm

#rpm-ivh MySQL-client-3.22.32-1.i386.rpm

#rpm-ivh MySQL-devel-3.22.32-1.i386.rpm

#rpm-ivh MySQL-shared-3.22.32-1.i386.rpm

四.安装Perl的数据库接口模块

以root身分进入,然后执行:

#tar zxvf DBI-1.13.tar.gz

#cd DBI-1.13

#perl Makefile.PL

#make

#make test

#make install

#cd..

#rm-rf DBI-1.13

#

#tar zxvf DBD-Oracle-1.03.tar.gz

#cd DBD-Oracle-1.03

#perl Makefile.PL

#make

#make test

#make install

#cd..

#rm-rf DBD-Oracle-1.03

#

#tar zxvf Msql-Mysql-modules-1.2209.tar.gz

#cd Msql-Mysql-modules-1.2209

#perl Makefile.PL

选择1(MySQL)和y(支持Mysql.pm)

#make

#make test

#make install

#

五.安装Apache+PHP+FastCGI

(一)解开Apache/PHP/FastCGI包:

#tar zxvf apache_1.3.12.tar.gz

#tar zxvf php-4.0.0.tar.gz

#tar mod_fastcgi_2.2.4.tar.gz

(二)编译PHP4

配置apache编译参数

#cd apache_1.3.12

#./configure--prefix=/usr/local/apache

配置PHP编译参数

#cd../php-4.0.0

#./configure--with-apache=../apache_1.3.12

>--with-mysql

>--with-oracle=$ORACLE_HOME

>--with-oci8=$ORACLE_HOME

>--enable-track-vars

编译PHP模块:

#make

#make install

创建php.ini参数文件

#cp php.ini-dist/usr/local/lib/php.ini

#cd..

(三)添加FastCGI模块:

#mv mod_fastcgi_2.2.4 apache_1.3.12/src/modules/fastcgi

(四)编译安装Apache

#cd apache_1.3.12

配置编译参数

#./configure--prefix=/usr/local/apache

>--activate-module=src/modules/php4/libphp4.a

>--activate-module=src/modules/fastcgi/libfastcgi.a

编译Apache

#make

安装Apache

#make install

(五)关闭原有系统自带的Apache

#/etc/rc.d/init.d/httpd stop共5页。

(六)配置Apache自身参数:

1.编辑/usr/local/apache/conf/httpd.conf文件,修改以下参数:

ServerName host.mydomain.name

DocumentRoot"/home/httpd/html"

Options Indexes FollowSymLinks MultiViews Includes

AllowOverride None

Order allow,deny

Allow from all

ScriptAlias/cgi-bin/"/home/httpd/cgi-bin/"

AllowOverride None

Options None

Order allow,deny

Allow from all

DirectoryIndex index.html index.phtml index.php index.htm index.shtml index.fcgi

2.修改自启动链接

#cd/etc/rc.d/init.d

#ln-fs/usr/local/apache/bin/apachectl httpd

(七)配置PHP4.0参数:

1.修改/usr/local/apache/conf/httpd.conf文件,,修改以下参数:

增加一行:AddType application/x-httpd-php.php.phtml.php3

2.修改/usr/local/apache/bin/apachectl脚本,使启动支持中文ORACLE环境:

在文件中66行("start)")下面加入几行:

export ORACLE_HOME=/opt/oracle8i/u01

export ORACLE_BASE=/opt/oracle8i

export ORACLE_SID=ORCL

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280"

3.修改/usr/local/apache/conf/srm.conf以在CGI程序中使用环境变量:

PassEnv ORACLE_HOME

PassEnv ORACLE_BASE

PassEnv LD_LIBRARY_PATH

PassEnv NLS_LANG

PassEnv ORACLE_SID

PassEnv PATH

(八)配置FastCGI执行环境:

1.修改/usr/local/apache/conf/httpd.conf文件,修改以下参数:

增加几行:

############ FastCGI Configures Begin##########################

AddHandler fastcgi-script.fcg.fcgi.fpl

SetHandler fastcgi-script

Order deny,allow

Allow from all

Options ExecCGI Indexes Includes

############### FastCGI Configure End###########################

2.创建fcgi的执行目录

#mkdir/home/httpd/html/fcgi

3.安装FCGI的Perl运行模块:

#tar zxvf FCGI-0.53.tar.gz

#cd FCGI-0.53

#perl Makefile.PL

#make

#make install共5页。

六.启运并测试

1.启动Apache服务器:

#/etc/rc.d/init.d/httpd start

2.编写PHP测试程序:

第一个测试程序:/home/httpd/html/t1.php;

第二个测试PHP与Oracle连接的PHP程序(表已经建好):查看是否为中文输出;

第三个测试PHP与MySQL连接的PHP程序(表已经建好)。

3.编写FastCGI的测试代码:/home/httpd/html/fcgi/test.fcgi

#!/usr/bin/perl

use FCGI;

use DBI;

$dbname="oracle";

$user="user";

$passwd="password";

$dbh="";

while(FCGI::accept()>=0){

&parse_form();

$id=$FORM;

$para=$FORM;

print"Content-type: text/html";

print"";

if(!$dbh){

print"no oracle, need to connect";

$dbh= DBI->connect("dbi:Oracle:$dbname",$user,$passwd);

}else{

print"OK, oracle aleady connected";

}

$sth=$dbh->prepare("select name from testtable where id=15");

$sth->execute;

@recs=$sth->fetchrow_array;

$sth->finish;

print"参数id=".$id." and my name is@recs[0]";

print"参数para=".$para."";

}

####传入参数处理部分#######

sub parse_form{

my($buffer);

my($pairs);

my(@pairs);

my($name);

my($value);

my$meth=$ENV;

if($meth eq"GET"||$meth eq"HEAD"){

$buffer=$ENV;

}

elsif($meth eq"POST"){

read(STDIN,$buffer,$ENV);

}

undef%FORM;

@pairs= split(/&/,$buffer);

foreach$pair(@pairs){

($name,$value)= split(/=/,$pair);

$value=~ tr/+//;

$value=~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex())/eg;

$value=~ s///g;

if($allow_html!= 1){

$value=~ s/]|)*>//g;

}

$FORM=$value;

}

}

测试看看FastCGI是否正常执行了。

阅读剩余
THE END