apache 安装问题及解决办法
一. 安装
报错:
/usr/lib/libexpat.so: could not read symbols: File in wrong format
解决:./configure LDFLAGS="-L/usr/lib64 -L/lib64" --with-mpm=prefork --prefix=$APACHE_INSTALL_PATH --enable-so --enable-modules=so --enable-rewrite --with-expat=builtin
附网上资料:
这个问题出现在configure后的make,也就是说configure都能顺利通过,但是在make这一步时确有问题了。/usr/lib/libexpat.so: could not read symbols: File in wrong format
废话不说了,就说说我的解决方案。
1、删除安装目录下的configure文件,在我的环境中是httpd-2.2.6/configure
2、删除“httpd-2.26/srclib/apr-util/configure”
3、通过以下命令重建编译文件(以下命令在http-2.26/目录下运行)。
#./buildconf
4. 、通过以上重建编译文件,现在可以拥有64位的apr-util了,最后在编辑时加上以上参数:
–enable-lib64
以下是我编译的例子:
# ./configure –enable-lib64 -libdir=/usr/lib64 –enable-ssl –with-ssl=/usr/local/ssl –enable-module=so –prefix=/usr/local/apache
#make
#make install
解决方法:编译时增加编译参数 --with-expat=builtin 。貌似在64位服务器下编译脚本在定位系统 expat 支持时有些问题。使用自带的expat来编译就不存在这个问题了。举例如下:
# ./configure --prefix=/usr/local/apache2 --enable-modules=so --enable-rewrite --with-expat=builtin
二. 添加对php的支持:
注意: #cp php.ini-dist /usr/local/lib/php.ini
安装php对httpd.conf有以下几处修改:
51 # Example:
52 # LoadModule foo_module modules/mod_foo.so
53 LoadModule php5_module modules/libphp5.so
284 <IfModule mime_module>
296 AddType application/x-httpd-php .php
4.此后可运行Apache服务器测试
在/usr/local/apache/htdocs下新建文件text.php内容如下:
<? phpinfo(); ?><!--hpinfo();-->
附:
# vi httpd.conf
在httpd.conf文件中,添加
AddType application/x-httpd-PHP .PHP
AddType application/x-httpd-PHP-source .PHPs
应该将以上两句添加在其他AddType之后。
确保文件中有以下一句话,没有就自己添加在所有LoadModule之后。
LoadModule PHP4_module modules/libPHP4.so
好了,在vi中使用":wq"保存httpd.conf文件,退出vi。启动Apache server:
# /usr/local/Apache/bin/httpd start
页:
[1]