Ubuntu18.04+PHP7.2环境下localhost无法加载index.php权限问题求助
解决Apache+PHP空白页及权限拒绝错误
从你提供的错误日志来看,核心问题是Apache运行的PHP进程没有权限读取/var/www/index.php文件。当你用sudo mv把备份文件移到/var/www后,文件的所有者和组还是原服务器上的用户,而Ubuntu 18.04中Apache默认以www-data用户/组运行,自然无法访问不属于它的文件。
修复步骤:
先确认当前权限情况
执行以下命令查看/var/www目录下文件的所有者和权限:ls -l /var/www你会发现index.php的所有者不是
www-data,这就是问题根源。修改目录和文件的所有者
递归将/var/www下所有文件和目录的所有者改为www-data用户和组:sudo chown -R www-data:www-data /var/www-R参数会处理目录下的所有子文件和子目录,确保整个网站目录都能被Apache访问。优化权限设置(可选但推荐)
为了兼顾安全性和可用性,建议设置标准的网站权限:- 目录权限设为755(所有者读写执行,组和其他用户读执行)
- 文件权限设为644(所有者读写,组和其他用户只读)
执行以下命令完成设置:
sudo find /var/www -type d -exec chmod 755 {} \; sudo find /var/www -type f -exec chmod 644 {} \;重启Apache服务
让权限变更生效:sudo systemctl restart apache2
补充说明:
你提到原备份文件权限是-rw-rw----,这个权限意味着只有文件所有者和所属组有读写权限,但www-data既不是这个文件的所有者,也不在对应的组里,所以PHP进程无法读取文件,最终导致空白页和日志中的权限错误。
内容的提问来源于stack exchange,提问作者hiigaran
相关产品推荐
相关产品推荐

