繁体   English   中英

自动IIS6 403.4重定向到SSL无效

[英]Automatic IIS6 403.4 redirect to SSL not working

我在ASP.Net网站上只有一个目录,需要启用SSL。 对于所有其他目录,我不希望启用SSL。

使用IIS,我已经选中了我想使用SSL的文件夹的“需要安全通道(SS)”和“ 128位加密”复选框。

现在,当用户输入“ http://”作为我的安全目录时,我想自动将其重定向到“ https://”。 我尝试了两种方法,但都失败了。

方法1:将目录403; 4的“ IIS自定义错误”页面更改为指向“ /Intranet2/SSLRedirect.aspx”的URL。 SSLRedirect会将它们指向正确的站点。 当我这样做时,即使URL是网站的一部分,并且我只有一个用于整个网站的应用程序池(而不是DefaultAppPool),也会收到“无法从当前应用程序池执行指定的请求”错误。

方法2:在目录中添加一个web.config,以覆盖403错误代码。 看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <customErrors defaultRedirect="../Default.aspx" mode="On">
            <error statusCode="403" redirect="../SSLRedirect.aspx" />
        </customErrors>
    </system.web>
</configuration>

但是,当我进行更改时,我总是得到IIS中定义的默认403.4。

有什么建议么?

方法1:您似乎误以为您只为整个网站配置了一个应用程序池。 您可能有一个用于默认站点,另一个用于您正在使用的虚拟目录。 您可以选择:

a)重新配置它,以使您实际上对于整个站点只拥有一个应用程序池,

b)将错误页面从与生成错误的页面位于同一应用程序池的目录中移出

c)调整注册表以关闭此错误:在HKLM \\ SYSTEM \\ CurrentControlSet \\ Services \\ W3SVC \\ Parameters中将IgnoreAppPoolForCustomErrors设置为1。 参见http://blogs.msdn.com/b/rakkimk/archive/2006/09/01/735684.aspx

方法2:仅当asp.net正在处理错误时,才使用web.config中的自定义错误。 我相信IIS在这里没有使用asp.net处理引擎,因为ssl检查失败。 因此,这在这里根本行不通。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM