我正在我的桌面Linux上运行我的第一个PHP代码。
我在我的pc上安装了httpd并更改了以下内容:
将文档根更改为/home/MyUserName/httpd/www
将默认端口更改为8080
我以root用户身份运行httpd,并使用浏览器访问主机(127.0.0.1:8080/),但我得到了错误403,无法访问主机上的任何目录。
我的操作系统是一个桌面软呢帽28。
发布于 2019-04-24 17:28:06
我怀疑您需要更改自定义文档根的所有权,以便它属于apache用户。
如果你跑..。
ls -la /home/MyUserName/httpd/www你能得到什么所有者/权限?
试试这个..。
chown apache:apache -R /home/MyUserName/httpd/www这将递归地将web根目录及其下面的任何内容的所有权设置给apache用户。
发布于 2019-04-24 18:01:02
这可能是一个SELinux问题
如果getenforce返回强制执行,您可以尝试使用sudo setenforce 0暂时禁用它(直到重新启动)。
如果您只是尝试学习而不觉得需要这种安全特性,可以通过设置SELINUX=disabled在/etc/selinux/config中永久禁用它
注意,禁用SELinux将在整个范围内停止保护系统,而不仅仅是针对Apache。如果你想要一个安全的环境,这是不建议的。如果结果是问题所在,并且您想要正确地设置它,您可以查看audit2allow为IMO,这是在新安装的操作系统上安装的最快的方法。
https://unix.stackexchange.com/questions/513805
复制相似问题