我尝试在没有 GUI 的 Ubuntu 服务器上测试我的 php 安装。因此我遵循第 3 条这是 LAMP(!) 的操作指南. 包括安装 php5 等
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
然后将 PHP 添加到目录索引。
sudo nano /etc/apache2/mods-enabled/dir.conf
因此该文件为:
<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>
/var/www/info.php
我有这样的文件:
<?php
phpinfo();
?>
当我尝试使用以下命令在另一台机器上访问该页面时,没有输出
http://hostname/info.php
index.html
向我展示'有用!',但/var/log/apache2/error.log
显示错误:
[..date..] [mpm_prefork:notice] [pid 13057] AH00163: Apache/2.4.6 (Ubuntu) SVN/1.7.9 PHP/5.5.3-1ubuntu2.1 mod_perl/2.0.8 Perl/v5.14.2 configured -- resuming normal operations
[..date..] [core:notice] [pid 13057] AH00094: Command line: '/usr/sbin/apache2'
[..date..] [:error] [pid 13064] [client 192.168.x.n:59821] PHP Parse error: syntax error, unexpected '<' in /var/www/info.php on line 3
[..date..] [:error] [pid 13065] [client 192.168.x.n:59822] script '/var/www/index.php' not found or unable to stat
x 和 n 是数字,n 是尝试访问该页面的客户端的 ip。
cat /var/www/info.php 的输出
<?php
<h3 align="center">"Awesomeness has no charge" - Po the Panda</h3> <-- here is the error...ok, thx.
phpinfo();
?>
和
$ ls -la /var/www/info.php
-rw-r--r-- 1 root root 86 Feb 1 23:33 /var/www/info.php
答案1
错误出在 info.php 中:
<?php
<h3 align="center">"Awesomeness has no charge" - Po the Panda</h3> <-- here is the error...ok, thx.
phpinfo();
?>
通过删除以下行
<h3 align="center">"Awesomeness has no charge" - Po the Panda</h3>
一切都如预期。 info.php 现在是(就像在许多文档中一样..)
<?php
phpinfo();
?>