仅在 localhost 上禁用 https

Posted

技术标签:

【中文标题】仅在 localhost 上禁用 https【英文标题】:disable https on localhost only 【发布时间】:2018-01-31 12:38:09 【问题描述】:

我正在使用 tomcat 7,我想禁用仅来自本地主机的 SSL 流量!并为入站流量启用它。

我已将以下配置添加到 web.xml,它目前正在将流量从 http 重定向到 https。

<security-constraint>
    <web-resource-collection>
        <web-resource-name>app</web-resource-name>
        <url-pattern>/info</url-pattern>
    </web-resource-collection>
    <!-- OMIT auth-constraint -->
</security-constraint>

<security-constraint>
    <web-resource-collection>
        <web-resource-name>app</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>Role</role-name>
    </auth-constraint>
</security-constraint>

我的服务器上有一个自定义备份工具,它不适用于 HTTP,因此我希望在 localhost 上禁用 HTPP。

【问题讨论】:

我不同意,这个问题只针对本地主机流量!并且不完全禁用 SSL 我想达到同样的效果。如果有任何解决方案,请分享。 【参考方案1】:

您可以在 server.xml 文件中的以下行发表评论。

&lt;Connector port="8443" ... SSLEnabled="true" scheme="https" secure="true" sslProtocol="TLS" ... /&gt;

希望这会有所帮助!

【讨论】:

【参考方案2】:

您可以禁用特定的 url,只需将 NONE 放在 transport-guarantee 标签上,检查Is security-constraint configuration for Tomcat mandatory?

<security-constraint>
    <web-resource-collection>
        <web-resource-name>securedapp</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>
<security-constraint>
    <web-resource-collection>
        <web-resource-name>securedapp</web-resource-name>
        <url-pattern>/info/*</url-pattern>
        <url-pattern>/info2/*</url-pattern>
        <url-pattern>/info3/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>NONE</transport-guarantee>
    </user-data-constraint>
</security-constraint>

【讨论】:

以上是关于仅在 localhost 上禁用 https的主要内容,如果未能解决你的问题,请参考以下文章

仅在 UIPageViewController 上的某个方向上禁用用户滑动?

如何仅在 IOS 上运行 Detox 测试并禁用 Android 运行

仅在 _some 字段上通过 Enter 键禁用表单提交

如何仅在页面加载时禁用 DataTables 中的排序?

Git Bash 仅在禁用趋势科技时工作

ASP.NET MVC:如何在 localhost 上自动禁用 [RequireHttps]?