PHP和Apache file_exists无法通过URL工作

时间:2016-07-18 11:57:34

标签: php apache file-exists

以下代码有效(打印“找到文件”)查找是否从命令行运行

php a.php

但如果我尝试从浏览器http://localhost/a.php访问它,则会打印“找不到文件”。

相同的URL在不同的机器上工作正常,这真的很奇怪。我无能为力,为什么它不起作用。

我已经检查过open_basedir它已被禁用且httpd.conf中没有条目

  

 if(file_exists("/mnt/disk1/a.jpg"))
{ 
  echo "file found";
}     else
{ 
  echo "file not found";    }   ?>

1 个答案:

答案 0 :(得分:2)

Web服务器用户帐户必须具有读取文件的权限 - 这是与您在控制台上使用的帐户不同的用户帐户。

sudo chmod +rx /mnt/disk1/a.jpg

Apache还需要对所有文件夹执行root访问权限。

sudo chmod +x /mnt/disk1
sudo chmod +x /mnt