大家好我使用PHP为我的网站和Ubuntu系统上的Linux。 我在apache的error.log文件中得到了上述错误,即使正确configuration了一切。 我做了大量的研究,但无法解决问题。 任何人都可以请帮我在这reagard? 以下是我在abc directory
.htaccess文件。 任何人都可以在这方面帮助我吗?
# -FrontPage- IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti* <Limit GET POST> order deny,allow deny from all allow from all </Limit> <Limit PUT DELETE> order deny,allow deny from all </Limit> AuthName abc.org AuthUserFile /home/abc/public_html/_vti_pvt/service.pwd AuthGroupFile /home/abc/public_html/_vti_pvt/service.grp Options -Indexes RewriteEngine On RewriteRule ^alumni$ alumni.php RewriteRule ^student$ student.php RewriteRule ^view_alumni_article/view/([0-9]+)$ view_alumni_article.php?op=view&article_id=$1
确保apache可以读取htaccess文件:
chmod 644 /var/www/abc/.htaccess
并确保它所在的目录是可读和可执行的:
chmod 755 /var/www/abc/
当我改变一个用户的主目录时,我遇到了同样的问题。 在我的情况是因为selinux
。 我用下面来解决这个问题:
selinuxenabled 0 setenforce 0
如果进入selinux舞台,你会遇到一个更为复杂的问题。 删除selinux保护措施并不是一个好主意,而是接受它,并使用设计来管理它的工具。
如果您正在从/var/www/abc
提供内容,则可以使用正常的ls -l
命令附加的Z
来验证selinux权限。 即ls -laZ
将给selinux上下文。
要添加一个由selinux服务的目录,你可以像这样使用semanage
命令。 这会将/var/www/abc
上的标签更改为httpd_sys_content_t
semanage fcontext -a -t httpd_sys_content_t /var/www/abc
这将更新/var/www/abc
的标签
restorecon /var/www/abc
这个答案是从unixmen采取和修改,以适应这个问题。 我一直在寻找这个答案一段时间,最后发现它感觉就像我需要分享的地方。 希望它可以帮助别人。