【问题标题】:What could cause deny,allow directive to be ignored in .htaccess?什么可能导致在 .htaccess 中忽略拒绝、允许指令?
【发布时间】:2015-03-11 15:03:11
【问题描述】:

我无法从我的 Web 根目录中的任何目录中的 htaccess 文件中获取允许和拒绝指令。我不知道应该在哪里配置它。我已经检查了明显的(已加载 authz 模块,允许覆盖设置为全部)有什么想法吗?这是我的配置详情。

我有一个在 RHEL 上运行的 Apache 2.2 服务器。在此服务器中,我有一个基于 IP 的 VirtualHost,其配置类似于 myipaddr 和 myserver 分别是实际 IP 地址和主机名:

<VirtualHost    myipaddr:80>
ServerName      myserver
TransferLog     /var/log/httpd/myserver.access
LogFormat       loadbalanced
ErrorLog        /var/log/httpd/myserver.error

DocumentRoot    /var/www/myserver
<Directory /var/www/myserver>
    Options -Indexes FollowSymLinks
    AllowOverride All
</Directory>
</VirtualHost>

我尝试过更复杂的指令,但即使是一个简单的 .htaccess 文件也应该拒绝一切都没有效果。

Order deny,allow
Deny from all

【问题讨论】:

  • 您是否确定在进行所有更改后重新启动了 Apache?
  • 是的,我重新启动了,而不仅仅是重新加载。

标签: apache .htaccess


【解决方案1】:

原来是 /etc/httpd/conf.d 中的一个配置文件,我没有意识到它正在加载,它胜过特定目录中的拒绝和允许。

   <Location />
      Order allow,deny
      Allow from all
      <LimitExcept GET POST PUT DELETE>
         Deny from all
      </LimitExcept>
   </Location>

【讨论】:

    猜你喜欢
    • 2012-09-06
    • 2012-04-14
    • 2011-07-02
    • 2012-03-12
    • 1970-01-01
    • 2014-10-23
    • 2014-09-03
    • 1970-01-01
    • 2011-11-30
    相关资源
    最近更新 更多