CentOS出错You don't have permission to access on this server
检查http.conf发现没错之后,查找资料后发现时selinux的问题,所以须要关闭这个服务:
1 |
vi /etc/sysconfig/selinux |
2 |
SELINUX=enforcing
改为 SELINUX=disabled |
重新启动后生效
不需重新启动 运行命令:
1 |
setenforce
0 |
You don't have permission to access / on this server
装好apache+php+mysql后。
拷贝一份phpmyadmin过后执行出错:
You don't have permission to access / on this server
有人说把selinux关掉就好了
而我发现了这个原因和方法:
由于站点运行的权限,一般要Read from all httpd scripts and the daemon这个权限。
当系统内经过解压出来的目录是没有这个权限的。
我们要在html/下新建一个文件夹(这时会自己主动分为Read from all httpd scripts and the daemon权限)
然后把档案复制一份过来放进去(注意不是剪切)
执行试试看吧。
我就能够了。
CentOS5.3+MySQL 5.0.45 +Apache2.2.3 +PHP5.1.6(都是系统自带的)
在终端输入 (更改站点根文件夹权限为755。非常多centos系统默觉得700)
[root@localhost ~]# chmod -R 755 /var/www/html/
然后重新启动
[root@localhost ~]# /etc/init.d/httpd restart
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
发现了吧。
因为配置了php后,这里的“Deny from all”已经拒绝了一切连接。把该行改成“allow from all”,改动后的代码例如以下,问题解决。
Options FollowSymLinks
AllowOverride None
Order deny,allow
allow from all
系统是centos。You don't have permission to access / on this server.
在google上搜索了一下,大部分的解决方法就是。
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
这里改成
Options Indexes FollowSymLinks
AllowOverride None
我改了之后还是会出现上面的错误,于是看一下自己设定的工作文件夹权限。
Options ExecCGI Includes
Options Indexes FollowSymLinks
当訪问类unix操作系统上的/usr/local/apache2/htdocs/foo/bar.htm文件时,你收到了Permission Denied的错误。
首先,查看文件的訪问权限:
$ cd /usr/local/apache2/htdocs/foo
$ ls -l bar.htm
假设需要的话,就修复它们:
$ chmod 644 bar.html
对目录以及每一个父目录做同样的操作
(/usr/local/apache2/htdocs/foo,/usr/local/apache2/htdocs,/usr/local/apache2,/usr/local/,/usr):
$ ls -la
$ chmod +x
$ cd ..
$ #repeat up to the root
在一些系统上。可使用工具namei来列出各个路径上的不同组件的訪问权限。然后去发现是否有权限问题:
$ namei -m /usr/local/apache2/htdocs/foo/bar.html