http v https在IIS上的不同文件位置?

我们有一台运行IIS的服务器,并且有一些文件夹在https下运行,但大部分都是打开的。 我遇到的问题是当有人从网站的安全部分的页面被引导,相关链接带来了https。 例如:

链接到

/图片

http://www.mysite.com/pictures

但是,如果有人在网站的安全部分

https://www.mysite.com/shoppingcart

然后点击返回/图片,他们得到

https://www.mysite.com/pictures

所以图片目录显示在https下。 我的问题是, 当发生这种情况时 ,他们会得到404未find的消息

我无法find设置中的任何内容,这些内容可能表示安全连接正在将文件从不安全的地方拖出。 如果我在网站的主页上inputhttp或https,那么这两者都可以。 但是,如果我尝试添加https://在文件夹级别,我得到一个404。

任何想法,为什么这可能会发生?

如果我理解正确, https: //www.mysite.com/pictures会抛出一个404,但是http://www.mysite.com/pictures不会。 而且, https://www.mysite.com的作品。

从你的网站的链接是相对的,所以如果他们来到http访问,链接是http,否则他们是https。 我想这个部分就是你想要的。

所以,对于子文件夹中的404错误,这不是默认行为。

你能说出这是一个真正的404错误,还是有一个子状态码? 浏览器窗口可能会显示失败,否则检查IIS日志。

跟踪失败是查看发生了什么的好方法。

我不能猜到会造成这种情况,所以我的build议是把这个分解成最小的部分。 即直接按照这些链接,而不考虑页面中的HTML,看看你是否可以repro它。 那么问题可能会更加明显。

确保Http://和https://确实是同一个网站。 您可以轻松地在IIS中设置两个网站,其中一个监听httpstream量(端口80),另一个监听httpsstream量(安装了SSL证书的端口443)。 如果IISpipe理器列出的不仅仅是网站部分下的“默认网站”,那么您可能会为HTTP和HTTPSstream量分别设置不同的网站。 您还应该检查SSL是否仅configuration为网站的一个文件夹或整个域。 通过右键单击IISpipe理器中的网站或文件夹并select“目录安全性”选项卡并更改“安全通信”设置来configurationSSL。