Apache 无法加载 .php 文件

Apache 无法加载 .php 文件

首先,抱歉,我的英语不好,问的问题在网上已经有很多答案了。我读了很多关于这个问题的帖子,但还是找不到解决办法。

我是一名 Web 开发人员,最近从 Windows 7 转到了 Ubuntu。我完成了一个网站(它已上线并正常运行),并设置了 LAMP 来继续使用它。我用以下命令创建了一个 test.php 文件:<?php phpinfo(); ?> 并将其放在/var/www/html目录中,它显示了有关 php 的所有信息,我非常高兴:“好的,一切都完成了,明天我会努力工作的”

但是我将整个网站放入了其中/var/www/html,而不是文件夹中,index.php 在其中,/var/www/html但是猜怎么着:没有加载任何我的 .php 文件,浏览器只是继续思考。

我做了什么:

  1. 我重新启动了 Apache:/etc/init.d/apache2 restart
  2. 我再次尝试使用 test.php 文件,它运行正常
  3. 我放入了/var/www/html一个.html 文件并且运行正常。
  4. 我查找了一下/etc/apache2/sites-enable/000-default.conf,上面写着: DocumentRoot /var/www/html

  5. 我查找了一下/etc/apache2/mods-enabled/dir.conf,上面写着: DirectoryIndex index.html index.cgi index.pl index.php ...

编辑*

我认为这是与 phpmyadmin 有关的问题,例如我无法连接数据库。但是当我尝试加载页面时,屏幕上什么都没有显示,所以...我不确定。

我可以访问该 URL localhost/phpmyadmin,并且我像这样编辑了 connection.php 文件:

<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_rakstadconnection = "localhost";
$database_rakstadconnection = "rakstadclandb";
$username_rakstadconnection = "root";
$password_rakstadconnection = "admin";
$rakstadconnection = mysql_connect($hostname_rakstadconnection, $username_rakstadconnection, $password_rakstadconnection) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_query("SET NAMES 'utf8'"); 
?>

数据库名称、用户和密码正确。

http://i89.photobucket.com/albums/k220/Haddex/Capturadepantallade2014-06-09112609_zpsc45ddb72.png

http://i89.photobucket.com/albums/k220/Haddex/Capturadepantallade2014-06-09112120_zps0b9e15f7.png

*编辑2:这可能是因为我将网站从 Windows 带到了 Linux?我使用了 Dreamweaver。

编辑3:我将#更改为/*/,什么也没有。error.log 文件显示:

[Mon Jun 09 17:08:13.627881 2014] [:error] [pid 1517] [client 127.0.0.1:46663] PHP Warning:  require_once(/var/www/html/Connections/rakstadconnection.php): failed to open stream: Permission denied in /var/www/html/index.php on line 1
[Mon Jun 09 17:08:13.627933 2014] [:error] [pid 1517] [client 127.0.0.1:46663] PHP Fatal error:  require_once(): Failed opening required 'Connections/rakstadconnection.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/html/index.php on line 1

我正在阅读错误日志,但是...我应该将 Linux 路径添加到我的 index.php 文件中吗?我不这么认为。

谢谢。

答案1

文件的权限可能有问题。如果 apache(或 www-data)没有读取权限,则页面不会显示。

这个错误似乎表明:

`[Mon Jun 09 17:08:13.627881 2014] [:error] [pid 1517] [client 127.0.0.1:46663] PHP Warning:  require_once(/var/www/html/Connections/rakstadconnection.php): failed to open stream: Permission denied in /var/www/html/index.php on line 1`

成为www-data目录及其中所有内容的所有者sudo chown -R www-data:www-data /var/www/html/<siteFolder>

然后设置权限,赋予所有者和组读写和执行权限,而其他所有人仅具有读取权限sudo chmod -R 774 /var/www/html/<siteFolder>


相关内容