我在 ubuntu 上安装了 apache,如下所示:
apt-get install apache2
我最初通过以下方式安装 PHP:
apt-get install php5
这给了我 php 5.3.x。现在我想使用最新版本的 php 5.4.x,所以我从源代码安装了。通过 cli
$ php -v
输出正确的版本 PHP 5.4.3
当我运行phpinfo()
Web 时,我仍然得到 php5.3.x。我该如何让 apache 使用我新安装的 php?
答案1
您可以将其放入 vhost 配置中:
AddHandler php-cgi-script .php
Action php-cgi-script /php5/php5-cgi
附带的 php 模块配置如下:
ScriptAlias /php5 /usr/bin
<Directory /usr/bin/>
Options +ExecCGI +FollowSymLinks
AllowOverride None
</Directory>
我不知道它究竟如何适合您的设置,所以您需要稍微即兴发挥一下。
另外,非常需要注意的是:有一个巨大的安全漏洞在 PHP CGI 中。测试它是否对你有影响。
答案2
当您即将编译 PHP 时就会发生“钩子”。
$ which apx2
如果没有输出,则运行
$ apt-get install apache2-prefork-dev
$ which apx2
复制“which”命令提供的位置。在 php 源代码中,运行
$ ./configure --with-apxs2=/usr/bin/apxs2
将 /usr/bin/apxs2 替换为剪贴板上的位置。重新启动 apache,它就可以运行了!
$ /etc/init.d/apache restart