我尝试通过从另一台计算机下载.gz 文件、将其传输到 Linux PC,然后执行 tar、./configure、make 和 make install 过程来安装 PHP。
但我没有在某个地方犯错。
问题:
加载任何 PHP 页面都会显示 PHP 代码,而不是正确的网站。现在,我尝试了很多方法来使其正常工作,甚至还就此提出了一个问题,但到目前为止,还没有成功。奇怪的是它在命令行上可以工作,但浏览器无法显示它。
我唯一一次让 PHP 运行是使用 yum 的时候。所以我想再试一次。
但是,当我的系统上已经安装了 PHP 时,我不确定执行 yum install php 会产生什么后果。
我尝试过的:
我尝试纠正“显示 PHP 代码”问题有很多,但总结一下:
- 重新安装 PHP(使用 make,我现在想摆脱的就是这个安装)
- 配置 httpd.conf - 结果各不相同。出于某种原因,修改 httpd.conf 文件绝对会破坏 apache。
至于我摆脱现有 PHP 的问题:
- 我尝试进入我解压 php 内容的目录,然后输入
make uninstall
,但只返回No rule to make target 'uninstall'. Stop.
系统:
- Fedora 19 x86_64
- Oracle 11g
- Apache 2.4.6
我希望有人能帮忙,在此先谢谢大家了。这个问题已经持续太久了。
答案1
所以在我看来,这听起来像是 Apache 的问题。您是否在 httpd.com 文件中加载了 PHP?我建议使用以下配置。
LoadModule php5_module modules/libphp5.so
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
RewriteEngine On
RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]
然后确保重新启动 Apache。希望这能有所帮助。
答案2
您的 php 解释器在命令行上运行这一事实表明它运行正常。如果浏览器尝试下载文件而不是显示网站,这是因为 Apache 配置错误,内容协商无法告诉浏览器它将要发送什么类型的内容。在我看来,您需要在 httpd.conf 中设置一个处理程序,让 Apache 知道它能够解释 php 代码。但是,如果您在设置方面遇到困难,我绝对建议您使用包管理器安装 php。
确保删除你的第一个安装
进行卸载(如果您的 Make 文件有此目标)或者删除前缀文件夹(如果可能)。