Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 在用户';s主目录_Apache_Permissions - Fatal编程技术网

Apache 在用户';s主目录

Apache 在用户';s主目录,apache,permissions,Apache,Permissions,我朋友的网站运行良好,直到他将文档根从/var/www/xxx移动到/home/user/xxx 当我们试图通过web浏览器访问站点时,Apache会发出13条被拒绝权限的错误消息 该站点配置为虚拟目录。所有Apache配置都没有改变(除了目录更改) 我们试图chmod 777/home/user/xxx,chown apache/home/user/xxx。但它们没有起作用 用户的主目录上是否设置了某种安全功能?服务器操作系统是CentOS(Godaddy VPS) 感谢您的帮助 谢谢 您是否

我朋友的网站运行良好,直到他将文档根从
/var/www/xxx
移动到
/home/user/xxx

当我们试图通过web浏览器访问站点时,Apache会发出13条被拒绝权限的错误消息

该站点配置为虚拟目录。所有Apache配置都没有改变(除了目录更改)

我们试图
chmod 777/home/user/xxx
,chown apache/home/user/xxx。但它们没有起作用

用户的主目录上是否设置了某种安全功能?服务器操作系统是CentOS(Godaddy VPS)

感谢您的帮助


谢谢

您是否更改了单个文件以及目录的权限

chmod -R 777 /home/user/xxx

Apache的错误日志将解释您获得拒绝权限的原因。而且,对于这样的问题,这是一个更好的论坛

如果错误日志只是简单地说“权限被拒绝”,请告诉用户Web服务器正在作为运行,并尝试从有问题的文件中读取。例如:

sudo -s
su - nobody
cd /
cd /home
cd user
cd xxx
cat index.html

查看其中是否有一个出现“权限被拒绝”错误。

可能是SELinux。检查相应的日志文件(/var/log/messages?-我使用RedHat衍生工具已有一段时间了),看看这是否阻止了访问。

您不能将httpd.conf中的日志级别设置为debug吗?(我正在使用FreeBSD)

ee usr/local/etc/apache22/httpd.conf

更改日志级别:

'日志级别:控制记录到错误日志的消息数。 可能的值包括:调试、信息、通知、警告、错误、临界值、, 警惕,埃默格。”


尝试更改为“调试”,然后重新检查错误日志。

结果。。。除了xxx之外,我们还需要chmod755父目录user

不确定是否已修复,但在httpd.conf中

检查以查看您的用户/组设置。通常设置为

用户www 集团www

如果是,请将其更改为您的姓名/组

用户格雷格
集团员工

我正在使用CentOS 5.5,对我来说,它是SElinux弄乱了它,我忘了检查它。 您可以通过以root用户身份临时禁用它

echo 0 > /selinux/enforce

希望它能帮助别人

selinux是造成这个问题的原因

t异常:错误:TSocket:无法连接到本地主机:9160(权限被拒绝[13]) 要解决此问题,您需要更改SELinux布尔值(它将在重新启动期间自动保持)。您可能还希望重新启动httpd以重置代理工作进程,尽管这不是严格要求的

setsebool-P httpd_can_网络_连接1 或

(13) 拒绝许可

错误13表示文件系统权限问题。也就是说,由于权限不正确,Apache被拒绝访问文件或目录。一般来说,这并不意味着Apache配置文件中存在问题

为了提供文件服务,Apache必须具有操作系统授予的访问这些文件的适当权限。特别是,httpd.conf中指定的用户或组必须能够读取将提供的所有文件,并搜索包含这些文件的目录,以及所有父目录,直到文件系统的根目录

对于httpd.conf中指定的用户或组不拥有的资源,类unix系统上的典型权限为644-rw-r--r--用于普通文件,755-drwxr-x-r-x用于目录或CGI脚本。您可能还需要检查支持扩展权限的操作系统上的扩展权限(例如SELinux权限)

一个例子

假设您在类unix系统上访问文件/usr/local/apache2/htdocs/foo/bar.html时收到“权限被拒绝”错误

首先检查文件的现有权限:

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

重复到根部 在某些系统上,可以使用工具名称i来帮助查找权限问题,方法是沿路径的每个组件列出权限:

namei-m/usr/local/apache2/htdocs/foo/bar.html

如果所有标准权限都正确,但仍然出现“权限被拒绝”错误,则应检查扩展权限。例如,您可以使用命令setEnforce0关闭SELinux并检查问题是否消失。如果是这样,可以使用ls-alZ查看SELinux权限和chcon来修复它们

在极少数情况下,这可能是由其他问题引起的,例如apache2.conf文件中其他地方的文件权限问题。例如,WSGIScriptAlias指令未映射到实际文件。错误消息可能不准确,无法读取哪个文件

不要将文件或目录设置为模式777,即使“只是为了测试”,即使“它只是一个测试服务器”。测试服务器的目的是在一个安全的环境中进行正确的操作,而不是因为做了错事而逍遥法外。它只会告诉你问题是否出在实际存在的文件上

错误:

[error] [client 127.0.0.1] (13)Permission denied: Could not open password file: /home/XXX/svn/svn_password [错误][client 127.0.0.1](13)权限被拒绝:无法打开密码文件:/home/XXX/svn/svn_password 信息:

##SELinux安全上下文文件标签 #httpd\u sys\u content\t具有.html和.htm扩展名的常规静态网页所使用的类型。 #CGI脚本读取文件和目录所需的httpd系统脚本。 #httpd_sys_script_ra_与httpd_sys_script_ro_类型相同,但也允许通过CGI脚本将数据附加到文件中。 #CGI脚本可以以任何方式更改此类型的httpd_sys_script_rw_t文件,包括删除。 #httpd\u sys\u script\u exec\t执行CGI脚本所需的类型 解决方案:

[root@localhost]# perror 13 OS error code 13: Permission denied [root@localhost]# chown apache.apache /home/XXX/svn/ -R [root@localhost]# semanage fcontext -a -t httpd_sys_script_rw_t "/home/XXX/svn(/.*)?" [root@localhost]# restorecon -R -v /home/XXX/svn/ [root@localhost]# restorecon reset /home/XXX/svn/ context [root@localhost]# ls -dZ /home/XXX/svn/ drwxr-xr-x. apache apache system_u:object_r:httpd_sys_rw_content_t:s0 /home/XXX/svn/ [root@localhost]# ls -dZ /home/XXX/svn/svn_password -rwxr-xr-x. apache apache system_u:object_r:httpd_sys_rw_content_t:s0 /home/XXX/svn/svn_password [root@localhost]# [root@localhost]#佩罗尔13 操作系统错误代码13:权限被拒绝 [root@localhost]#chown apache.apache/home/XXX/svn/-R [根@ [root@localhost]# perror 13 OS error code 13: Permission denied [root@localhost]# chown apache.apache /home/XXX/svn/ -R [root@localhost]# semanage fcontext -a -t httpd_sys_script_rw_t "/home/XXX/svn(/.*)?" [root@localhost]# restorecon -R -v /home/XXX/svn/ [root@localhost]# restorecon reset /home/XXX/svn/ context [root@localhost]# ls -dZ /home/XXX/svn/ drwxr-xr-x. apache apache system_u:object_r:httpd_sys_rw_content_t:s0 /home/XXX/svn/ [root@localhost]# ls -dZ /home/XXX/svn/svn_password -rwxr-xr-x. apache apache system_u:object_r:httpd_sys_rw_content_t:s0 /home/XXX/svn/svn_password [root@localhost]#