【发布时间】:2013-07-20 15:19:14
【问题描述】:
我在我的 CentOS 服务器上安装了 PHP。但是,当在我的脚本中运行 phpinfo() 来测试它时,我收到的是 HTML,而不是解释的信息。
我可以看到 PHP 的文件夹。我什至可以在etc 文件夹中看到 php.ini。
但是 PHP 本身似乎不起作用。
我的意思是我的 test.php 文件看起来像这样:
<?php
phpinfo();
?>
响应如下所示:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html><head>
<style type="text/css">
body {background-color: #ffffff; color: #000000;}
body, td, th, h1, h2 {font-family: sans-serif;}
pre {margin: 0px; font-family: monospace;}
a:link {color: #000099; text-decoration: none; background-color: #ffffff;}
...
等等。
问题似乎是什么,我该如何解决?
如果我复制返回的 HTML,将其粘贴到 HTML 文件中,然后从那里运行,我可以看到格式化的结果,但不能通过运行 test.php。我假设 PHP 没有以某种方式加载......即使在解释的 HTML 中我可以看到:
**Server API Apache 2.0 Handler
Virtual Directory Support disabled
Configuration File (php.ini) Path /etc/php.ini
Scan this dir for additional .ini files /etc/php.d
additional .ini files parsed /etc/php.d/dbase.ini, /etc/php.d/json.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_sqlite.ini
PHP API 20041225
PHP Extension 20050922
Zend Extension 220051025
Debug Build no
Thread Safety disabled
Zend Memory Manager enabled
IPv6 Support enabled
Registered PHP Streams php, file, http, ftp, compress.bzip2, compress.zlib, https, ftps**
等等……
在这个系统上,托管了三个网站。和这个问题有关系吗?
【问题讨论】:
-
听起来 PHP 正在运行,
phpinfo()正在输出正确的结果。您可能只是有一些模板或其他东西妨碍了结果。 -
您看到的 HTML 代码与我在只有
<?php phpinfo(); ?>的页面上“查看源代码”时看到的相同。它是 PHP 信息页面的 HTML 标头。 -
是的。它是在正常的 phpinfo 返回页面上正常返回的 HTML 代码。但它没有被解释。我没有点击“查看源代码”就看到了。我该怎么办?
-
如果我没记错的话,php 在从 web 服务器上运行的脚本中执行 phpinfo() 时会输出 HTML。从命令行试试这个:php -i 或从命令行运行你的脚本。
-
我确实从命令行运行了 php -i,并且收到了很多文本。似乎 phpini() 应该返回什么。但是,由于它不能在浏览器中运行,我倾向于认为某处有问题。正如我之前所说,我知道我已经安装了 php,但它似乎无法正常工作。