Codeigniter webhost客户端ajax错误(拒绝501)

时间:2017-07-04 19:39:56

标签: php ajax codeigniter

嗨,目前我正在看我的网站显示信息,如果我的网站主机上的我的IP是白名单,如果它没有,那么它就不会得到新闻或正确加载php / JS。

发生这种情况的原因如下,但是如果你们中的一些人之前有过这样的话,如果是缺少http请求函数或服务器端的一些协议(常见的),那么就是idk。

服务器端出错:

[client ip ... ] ModSecurity: Access denied with code 501 (phase 2).
 Match of "rx ^((?:(?:POS|GE)T|OPTIONS|HEAD))$" against "REQUEST_METHOD" required. 
[file "/usr/local/apache/conf/modsec2.user.conf"] 
[line "38"]
[id "1234123435"] 
[msg "Method is not allowed by policy"] 
[severity "CRITICAL"] 
[tag "POLICY/METHOD_NOT_ALLOWED"] 
[hostname "link"]
[uri "/showTopNews"] 
[unique_id "WVukp1ka8AEAChYSbGQAAAAP"]

1 个答案:

答案 0 :(得分:1)

这是mod_security2错误。更具体地说,由规则1234123435

引起

似乎你违反了REQUEST_METHOD正则表达式。接受的请求类型为POSTGETOPTIONSHEAD

您有几个选择:

1)在您的代码中修复请求类型(使用允许的类型 - 打开开发人员工具并观看Newtork选项卡以查看您要发送的内容)

2)更新你的规则以允许其他类型(如果你知道你要添加的内容,则不是非常危险)

3)您可以在apache vhost .conf文件中使用此规则完全删除规则(它不会在.htaccess中工作):

<IfModule mod_security2.c>
SecRuleRemoveById 1234123435
</IfModule>

我和第一个一起去。

对这4种请求类型的限制是相当合理的。但它确实排除了某些类型。有关详细信息,请参阅HTTP/Methods