【问题标题】:how to disable mod_security?如何禁用 mod_security?
【发布时间】:2016-11-23 06:59:03
【问题描述】:

我知道这已经在这里讨论过,但不幸的是我没有找到解决方案。我正在使用 Hostgator 共享主机帐户,并安装了从 youtube.com 获取视频的脚本。一切都很好,但是当我使用该选项来获取视频时,我看到了这个错误 ERROR 403 - FORBIDDEN。我也尝试了 .htaccess 方法,但它也不起作用。是否有任何解决方案可以为我的域禁用 mod_security。我的域名是moviedrama.com

【问题讨论】:

    标签: .htaccess mod-security


    【解决方案1】:

    更新:正如BazzaDP 正确指出的那样,我最初的建议已过时,现在可能不起作用。根据mod_security wiki,仍然可以通过.htaccess 禁用一些规则,包括SecRuleRemoveById,但是这需要在编译mod security 时启用。


    我没有 Hostgator 帐户,但这个通用解决方案应该可以工作。

    如果它不存在,请在您的 web 目录的根目录中创建一个 .htaccess 文件。

    然后添加以下内容:

    <IfModule mod_security.c>
       SecFilterEngine Off
       SecFilterScanPOST Off
    </IfModule>  
    

    source

    这应该禁用 mod_security。

    祝你好运

    【讨论】:

    • 据我所知,这不是旧的 ModSecurity 1 语法,它不再与 Apache 2 一起使用。
    • 嘿@BazzaDP,感谢您接受我过时的建议。我试图想出一个比修改服务器配置文件更简单的解决方案,但我错过了目标;)
    • 这对我没有任何作用,我仍然得到“406 Not Acceptable!在此服务器上找不到请求资源的适当表示。此错误是由 Mod_Security 生成的。”当用户输入“hi
    • @Curtis,您是否询问过您的托管支持人员是否可以提供解决方案?
    • 是的,我联系了 HostGator,他们说他们会继续解决这个问题并给我发电子邮件,但他们从来没有这样做过。现在我已经实现了一个在前端检查报价和左箭头的hack,但这可能不是唯一的情况。我必须在前端运行所有的 mod 安全性,看看它会捕获什么,然后警告用户他们的有效输入不起作用。
    【解决方案2】:

    对于 ModSecurity2(自 2006 年推出),您需要在 Apache 配置文件中使用它:

    <IfModule mod_security2.c>
    SecRuleEngine Off
    </IfModule>
    

    并不是说这在 .htaccess 文件中不受支持,并且必须在主配置文件中,您可能无法在不熟悉 Hostgator 的共享托管环境中访问该配置文件,但可以想象它属于此类)。

    替代方法是将规则(或更具体地说是一个操作,以便它始终运行)放入您的 .htaccess 文件中:

    SecAction "nolog,phase:1,ctl:ruleEngine=Off"
    

    请注意,这取决于 ModSecurity 是否已使用在 .htaccess 文件中定义规则和操作的选项进行编译(您希望大多数共享托管环境会这样做,但不知道 Hostgator 是否会这样做)。

    如果这些和 David 的回答都不起作用,您最好与 Hostgater 取得联系。

    【讨论】:

      猜你喜欢
      • 2012-10-07
      • 1970-01-01
      • 2017-08-03
      • 2020-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多