加载中…
正文 字体大小:

Linux安装apache,php以及扩展的记录

(2010-12-01 20:37:50)
标签:

linux

apache

php

杂谈

分类: 信息技术

2010年12月1日 星期三 晴 

Linux下安装apache,php以及扩展的记录。

1.安装Apache:

cd /src/
wget  http://mirror.bjtu.edu.cn/apache/httpd/httpd-2.2.17.tar.gz
tar zxf httpd-2.2.17.tar.gz
cd httpd-2.2.17
./configure –with-enable-so –sysconfdir=/etc/httpd
make
make install

 

整理一下配置文件的路径.
cd /etc/httpd
mkdir conf
mv httpd.conf conf
cd /etc
ln -s /etc/httpd/conf/httpd.conf httpd.conf

 

vi /etc/httpd.conf进行修改
ServerName   xxx.xxx.xxx.xxxxx
DocumentRoot “/var/www/html”
<Directory “/var/www/html”> (目录从默认的目录改过来)

 

2.安装php:

cd /src
wget http://cn2.php.net/get/php-5.3.3.tar.gz/from/cn.php.net/mirror
cd php-5.3.3
./configure –with-apxs2=/usr/local/apache2/bin/apxs –sysconfdir=/etc –with-co
nfig-file-path=/etc –with-config-file-scan-dir=/usr/etc/php.d –with-zlib
make
make install

 

vi /etc/httpd.conf,加一行:
AddType application/x-httpd-php .php

加载PHP模块的指令已经有了,应该是安装PHP过程中加上的。为了安全起见,检查以下下面的指令是否生效:
LoadModule php5_module        modules/libphp5.so

 

安装完php,重新apache
/usr/local/apache2/bin/apachectl restart

编辑一个php文件包含一行代码:phpinfo();

从外部访问,显示Loaded Configuration File None,Scan this dir for additional .ini files None。配置文件没有加载。检查/etc/php.ini,文件存在。后在网上搜到解决方案,编辑/etc/httpd.conf,在LoadModule php5_module        modules/libphp5.so 这一行后面添加:
PHPIniDir /etc/
重启apache,Loaded Configuration File 显示正确,而Scan this dir for additional.ini还是None,暂时没有解决。

 

3.编译PHP扩展的方法:

whereis phpize 找到phpize在/usr/local/bin/phpize
PHP安装源文件在 /src/php-5.3.3

cd /src/php-5.3.3/ext/extname
/usr/local/bin/phpize
./configure –with-php-config=/usr/local/bin/php-config
make
make install

4.编译mysql扩展

cd /src/php-5.3.3/ext/mysql
/usr/local/bin/phpize
./configure –with-php-config=/usr/local/bin/php-config –with-zlib-dir=/usr/include/

这时出现错误,查看config.log,发现skipping incompatible /usr/lib/mysql/libmysqlclient.so的错误。上网搜查,发现因为系统是64位,对应的文件应该在/usr/lib64/mysql。解决方法:

export LDFLAGS=-L/usr/lib64/mysql

然后继续:
./configure –with-php-config=/usr/local/bin/php-config –with-zlib-dir=/usr/include/
make
make install

文件生成在/usr/local/lib/php/extensions/no-debug-non-zts-20090626/,与php安装以后的默认扩展文件目录的位置一致,所以无需移动文件或修改php.ini中extension_dir的值,但需要增加
extension=mysql.so

0

阅读 评论 收藏 转载 喜欢 打印举报
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有