我按照这个link的教程在我的Centos 6.5上用apache使用php7或phpng。
我可以在控制台中执行php脚本,但我希望能够使用Apache Server运行php脚本。
我需要一些帮助,因为我无法找到libphp7.so模块。我不知道我是否必须建造它或者是什么。
答案 0 :(得分:2)
我认为您需要在配置脚本中添加--with-apxs2
。根据您提供的链接,我在配置标志中没有看到。 <FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
将&#34;构建共享的Apache 2.0 Handler模块&#34;。您可能还需要在apache配置中确保:
enum role: [:player => 0, :owner => 1, :admin => 2]
我第一次构建php7时它只是显示了源而不是执行它,但添加它导致它执行代码。
如果你想用Docker试试我只是在https://registry.hub.docker.com/u/silintl/php7/为PHP7创建了一个Docker镜像你也可以只查看Dockerfile,其中包含用于安装和配置它的所有命令。
答案 1 :(得分:2)
感谢Phillip为这个问题提供了一些线索,但就我而言,我已经用这种方式解决了我的问题:
1 - 使用以下命令将您拥有的库php7.so复制到apache模块目录中: sudo cp /etc/httpd/modules/libphp7.so / opt / bitnami / apache2 / modules
2 - 在代码中添加Apache配置文件:
LoadModule php7_module ./modules/libphp7.so SetHandler应用程序/ x-httpd-php
之后PHP运行良好!
答案 2 :(得分:0)
在由父配置文件/etc/httpd/conf.modules.d/15-php.conf
加载的配置文件/etc/httpd/conf/httpd.conf
中,我发现以下默认配置:
<IfModule !mod_php5.c>
<IfModule prefork.c>
LoadModule php7_module modules/libphp7.so
</IfModule>
</IfModule>
<IfModule !mod_php5.c>
<IfModule !prefork.c>
LoadModule php7_module modules/libphp7-zts.so
</IfModule>
</IfModule>
使用@JanePage和@PhilipShipley提供的信息,我将其更改为:
LoadModule php7_module modules/libphp7.so
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
Apache开始正常工作。