Apache LIMIT 指令不允许通过 LAN 查看本地主机项目

Apache LIMIT 指令不允许通过 LAN 查看本地主机项目

我想允许使用 Apache 通过 LAN 查看我的本地主机项目LIMIT 指令.htaccess

我的本地主机项目 URL 是http://192.68.0.123/myproject

以下是.htaccess造成问题的部分

<Limit POST PUT DELETE>
 order deny,allow
 deny from all
 allow from 192.168.0.0/255
 Satisfy any
</Limit>

但它给出了错误

服务器错误!

服务器遇到内部错误,无法完成您的请求。服务器超载或 CGI 脚本出现错误。

错误 500

192.168.0.123 Apache/2.4.10 (Unix) OpenSSL/1.0.1i PHP/5.5.15 mod_perl/2.0.8-dev Perl/v5.16.3

我的错误日志

[2014 年 12 月 26 日星期五 11:18:36.183915] [core:alert] [pid 4752] [客户端 192.168.0.123:38795] /opt/lampp/htdocs/myproject/.htaccess:指定的网络掩码无效。

我的工作

  • 如果我设置allow from 192.168.0.123 它仅适用于我的 IP,而不适用于 LAN

  • 如果我设置allow from 192.168.0-5.0-255那么它工作正常(预期)但只有主页出现,登录后显示禁止访问!403

而建议/使用这个博客以及许多其他的答案

这是否(/改为-)变成了阿帕奇 2.4

有人可以解释一下这些的区别和正确的有效语法,但我在 Apache 文档中没有找到它。


另一个问题

当添加得到在 LIMIT 选项中

<Limit GET POST PUT DELETE>
 order deny,allow
 deny from all
 allow from 192.168.0.0-255
</Limit>

然后到处都会出错

禁止访问!

您无权访问请求的目录。没有索引文档或目录受读保护。

错误 403 禁止访问!

错误日志

[2014 年 12 月 26 日星期五 11:34:05.840880] [access_compat:error] [pid 4752] [客户端 192.168.0.123:39012] AH01797:服务器配置拒绝客户端:/opt/lampp/htdocs/myproject/

答案1

我找到了解决方案来自这篇文章

改变路线

允许来自 192.168.0.0-255

allow from 192.168.0.2/255.255.0.0

将锁定 Apache 到我的内部 LAN 即地址范围 192.168.0.2192.168.0.255仅具有子网掩码255.255.0.0

并且适用于得到另外,这是我的最终.htaccess

<Limit GET POST PUT DELETE>
 Order deny,allow
 Deny from all
 Allow from 127.0.0.1 ::1
 Allow from 192.168.0.2/255.255.0.0
</Limit>

答案2

满足指令的目的是结合多个要求,即来自你的子网有效用户。

忽略该选项,您应该会得到更有效的配置。

最好使用 apache 配置文件而不是 .htaccess 文件。

相关内容