【问题标题】:Enable and Enforce SSL but allow independent ASPX page to use SSL启用并强制实施 SSL,但允许独立的 ASPX 页面使用 SSL
【发布时间】:2012-10-02 11:28:17
【问题描述】:

我有一个设置了启用 SSL 和强制 SSL 的 DotNetNuke 网站,以允许我们同时拥有不安全的页面和安全的页面,例如购物车。

但是,我希望能够通过https:// 访问一个独立的 ASPX 页面(一个 PayPal IPN 侦听器)

目前,当通过 SSL 向 IPN 侦听器发出请求时,会提供一个包含 javascript 重定向代码的 HTML 页面以重定向到 http://。由于 PayPal 的请求不响应 javascript 重定向,因此永远不会请求正确的页面。

是否可以为此文件启用 SSL?

编辑:添加了有关 javascript 重定向的信息。另外,我尝试创建一个虚拟目录,但这不允许我在我的 aspx 文件中使用 DNN 应用程序代码。

【问题讨论】:

    标签: asp.net ssl dotnetnuke


    【解决方案1】:

    什么版本的 DNN?从技术上讲,我认为重定向不会影响实际的物理 .aspx 页面。

    但是,无论您是否可以将该文件放在单独的文件夹中,然后将其设为虚拟目录,这都会阻止 DNN 处理请求。

    【讨论】:

    • 我正在使用 DNN 6(最新版本)。我会试试虚拟目录。
    • 虚拟目录没有帮助 - 我使用 DNN 应用程序代码向用户添加角色,当文件位于单独的应用程序中时,这将不起作用。
    【解决方案2】:

    你可以做两件简单的事情来克服这个问题:

    • 确保您的页面继承自 DotNetNuke.Framework.PageBase
    • 在 aspx 页面中,实现一个 PreRender 方法,该方法将检查请求协议并将响应代码设置为 301

    如果您需要更多帮助,请告诉我

    -- 更新了-- 在 root 中找到 siteUrls.config 并尝试在 </Rules></RewriterConfig> 之前添加以下内容:

                .*PageName.aspx(.*)
                ~/PageName.aspx$1
            
    

    【讨论】:

    • 感谢您的回答。实现 PreRender 方法是什么意思?你能举个例子吗?
    • 我尝试过继承DotNetNuke.Framework.PageBase 并添加一个Page_PreRender 方法来检查url 中的https 并使用Response.RedirectPermanent 重定向到http。但是,我仍然得到相同的 DNN javascript 重定向,而不是我的 301 响应。还有其他想法?
    • 可能是因为您从站点设置中设置了强制 SSL?
    • 是的 - 正如我原来的问题中提到的,我需要启用强制 SSL 以允许从安全页面导航到非安全页面。
    • 抱歉,还是没有。 DNN 重定向似乎发生在我使用任何代码之前。
    猜你喜欢
    • 2015-07-09
    • 2015-07-14
    • 1970-01-01
    • 2013-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    • 1970-01-01
    相关资源
    最近更新 更多