当前位置: 首页 > 知识库问答 >
问题:

/srv/www的Apache权限被拒绝:无法检查.htaccess文件,但无法检查/var/www

尉迟彬
2023-03-14

我在Centos 6.5上遇到一个问题:

1)添加了新组(groupadd developers)

2)将用户a(gid 501)、root、apache、nobody添加到上述组(usermod-g develoeprs a&&usermod-g develoeprs apache&&usermod-g develoeprs root&&usermod-g develoeprs nobody)

3)将所有文件夹和文件复制到/srv/www中

5)更改模式,因此/srv/www是组可读/可写/可搜索的(chmod-r 2775/srv/www)

6)将“umask 002”添加到/etc/sysconfig/httpd的末尾,使其在组可写模式下运行

7)添加了虚拟主机,并添加到/etc/httpd/conf.d/vhosts.conf(service httpd configtest抛出正常)

NameVirtualHost *:80
NameVirtualHost *:443

SSLStrictSNIVHostCheck off

<VirtualHost *:443>
    ServerAdmin webmaster@domain.ext
    DocumentRoot /srv/www/test
    ServerName test.domain.com
    ServerAlias test.domain
    SSLEngine on
    SSLCertificateFile /etc/httpd/certs/domain.com/server.crt
    SSLCertificateKeyFile /etc/httpd/certs/domain.com/server.key
    <Directory /srv/www/test>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

我仍然收到上面相同的错误消息。

然后,我尝试将apache用户的/etc/passwd中的主文件夹更改为/srv/www(服务器重启),但仍然没有什么好消息,即权限被拒绝。我甚至重命名了旧的/var/www文件夹,并在/var/www中创建了一个符号链接到/srv/www。另一个尝试是为这两个用户返回root:root、apache:apache和:developers组。

/srv/ww/[不工作]

/SRV/

DRWXRWSR-X。4 apache开发人员

/VAR/WWW[工作]

有没有人知道为什么它在/srv/www文件夹中不起作用?

共有1个答案

蓝昊天
2023-03-14

我终于把问题弄清楚了。这是由于SELinux策略覆盖了基本的传统自主访问控制(DAC)方法(如文件权限或访问控制列表)导致的,这些方法通常用于控制用户的文件访问!

$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

$ setenforce
usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]

$ setenforce Permissive

$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   permissive
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

有关SELinux的更多信息,请访问CentOS。当我切换到允许模式时,我的/srv/就开始工作了。

如果您知道这样做的内容和原因,那么您可以通过更改以下行在/etc/SELinux/config中永久禁用SELinux:

SELINUX=enforcing
SELINUX=disabled

重新启动您的服务器,您应该永久禁用它。

注意:当从禁用模式切换到允许模式或强制模式时,强烈建议重新启动系统并重新标记文件系统。

 类似资料:
  • 问题内容: 我正在使用Amazon EC2托管通过git部署到服务器的网站。之前,我在同一类型的EC2 Ubuntu Linux Server实例上使用了本教程,并且运行良好。但是,当我尝试推送到服务器时,收到以下错误跟踪: 教程:http://toroid.org/ams/git- website-howto 跟踪: 目前,我的存储库中只有一个文件,即。 错误跟踪显示拒绝创建文件的权限。请您告诉

  • 问题内容: 我正在开发django API,它将通过WSGI在运行Ubuntu的服务器上在Apache2之上运行。 用户将能够使用POST请求将拍摄的照片上传到服务器。API处理此请求,然后尝试将图像写入。如果没有目录,它将创建它。 在开发过程中进行测试时,使用Windows和Scientific Linux都可以。在部署服务器上进行测试时,我收到此错误: 据我了解,Apache2服务器正在使用u

  • 问题内容: max@serv$ whoami max max@serv$ ls -la ./defines.php -rwxrwxrwx 1 max max 1985 2011-11-16 02:01 ./defines.php max@serv$ chmod 0777 ./defines.php max@serv$ rm ./defines.php rm: cannot remove `./de

  • 问题内容: 我正在尝试通过经典的ASP记录集执行以下查询- 尽管我遇到了权限问题。所以我收到的错误是- Microsoft OLE DB提供程序的ODBC驱动程序错误‘80040e09’ [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]对对象“ A_Permission”,数据库“ HRWB_3_0”,架构“ dbo”的选择权限被拒绝。 在不更改权限设置

  • 我是PHP新手。我计划根据用户输入创建文件夹、子文件夹。 文件夹和子文件夹已成功创建。 最后我尝试创建一个文件,它显示以下错误。 fopen(upload/llocalhost/hrms):无法打开流:在C:\xamp\htdocs\ssspider\index中的权限被拒绝。php第205行 我的代码是: 请帮我找出我的问题? 编辑:谢谢。我出错了。以前我没有提到文件名。现在工作正常。谢谢

  • 我想上传一张图片。每次我试图上传图片时,我都会收到下面的错误信息。 我已经设置了读取权限 警告:move_uploaded_file(上载/1000020170620022532img3.png):无法打开流: /Applications/XAMPP/xamppfiles/htdocs/social-network-master/profile.php第41行的权限被拒绝 警告:move_uplo