首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

linux安装apache无法生成libphp5.so解决办法

2012-03-18 
linux安装apache无法生成libphp5.so版本是:httpd-2.2.13.tar.gz尝试过编译命令:1./configure --prefix/us

linux安装apache无法生成libphp5.so
版本是:httpd-2.2.13.tar.gz
尝试过编译命令:
1
./configure --prefix=/usr/local/apache2 --enable-module=so --enable-mods-shared=most \
> --enable-so --enable-rewrite --enable-vhost-alias --enable-ssl --enable-authn-dbm \
> --enable-static-support --enable-static-htpasswd --enable-static-logresolve \
> --enable-static-rotatelogs --enable-static-htdbm \
--with-ssl=/usr/include/openssl --with-mysql=/usr/local/mysql
2
./configure --prefix=/usr/local/apache2 --enable-module=so --enable-mods-shared=all \
> --enable-so --enable-rewrite --enable-vhost-alias --enable-ssl --enable-authn-dbm \
> --enable-static-support --enable-static-htpasswd --enable-static-logresolve \
> --enable-static-rotatelogs --enable-static-htdbm \
--with-ssl=/usr/include/openssl --with-mysql=/usr/local/mysql
3
./configure --prefix=/usr/local/apache2 --enable-module=so
结果都无法生成。


[解决办法]
./configure之后要执行make
[解决办法]
晕倒,我因为你是用php的源文件编译的。
httpd是Apache的编译,当然没有libphp5.so
你要去php网站下载php的原文件编译,才有libphp5.so
[解决办法]
make install
[解决办法]
你编译httpd的时候指定的目录是/usr/local/apache2,但是php编译的时候指定apache的目录却是/usr/local/apache。

程序当然找不到libphp5.so

按照PHP手册上安装步骤重新仔细做一遍吧
[解决办法]
我一般这么用find:
find / -name 'libphp5.so'

看不出你的问题在哪里,对照下面的PHP手册的安装步骤,一步步检查一下吧:

1. gzip -d httpd-2_0_NN.tar.gz
2. tar xvf httpd-2_0_NN.tar
3. gunzip php-NN.tar.gz
4. tar -xvf php-NN.tar
5. cd httpd-2_0_NN
6. ./configure --enable-so
7. make
8. make install

Now you have Apache 2.0.NN available under /usr/local/apache2,
configured with loadable module support and the standard MPM prefork.
To test the installation use your normal procedure for starting
the Apache server, e.g.:
/usr/local/apache2/bin/apachectl start
and stop the server to go on with the configuration for PHP:
/usr/local/apache2/bin/apachectl stop.

9. cd ../php-NN

10. Now, configure your PHP. This is where you customize your PHP
with various options, like which extensions will be enabled. Do a
./configure --help for a list of available options. In our example
we'll do a simple configure with Apache 2 and MySQL support. Your
path to apxs may differ, in fact, the binary may even be named apxs2 on
your system. 

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

11. make
12. make install

If you decide to change your configure options after installation,
you only need to repeat the last three steps. You only need to
restart apache for the new module to take effect. A recompile of
Apache is not needed.

Note that unless told otherwise, 'make install' will also install PEAR,
various PHP tools such as phpize, install the PHP CLI, and more.

13. Setup your php.ini 

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

You may edit your .ini file to set PHP options. If you prefer having
php.ini in another location, use --with-config-file-path=/some/path in
step 10.

If you instead choose php.ini-recommended, be certain to read the list
of changes within, as they affect how PHP behaves.

14. Edit your httpd.conf to load the PHP module. The path on the right hand
side of the LoadModule statement must point to the path of the PHP


module on your system. The make install from above may have already
added this for you, but be sure to check.

For PHP 4:
  
LoadModule php4_module modules/libphp4.so

For PHP 5:

LoadModule php5_module modules/libphp5.so
 
15. Tell Apache to parse certain extensions as PHP. For example, let's have
Apache parse .php files as PHP. Instead of only using the Apache AddType
directive, we want to avoid potentially dangerous uploads and created
files such as exploit.php.jpg from being executed as PHP. Using this
example, you could have any extension(s) parse as PHP by simply adding
them. We'll add .phtml to demonstrate.

<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>

Or, if we wanted to allow .php, .php2, .php3, .php4, .php5, .php6, and
.phtml files to be executed as PHP, but nothing else, we'd use this:

<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>

And to allow .phps files to be executed as PHP source files, add this:

<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

16. Use your normal procedure for starting the Apache server, e.g.:
 
/usr/local/apache2/bin/apachectl start

- OR -

service httpd restart

热点排行