从 https 重定向到 http 时丢失查询字符串

发布于 2024-10-14 12:20:16 字数 538 浏览 1 评论 0原文

我有一个完全使用 HTTPS 运行的网站 https://www.mysite.com(我在 IIS 中将 http 重定向到 https)。这一切都很好。

我有一个旧版本的网站 http://old.mysite.com,一些用户仍在运行该网站,该网站仅通过 HTTP 运行。这一切都很好。

我的新站点有 1 个 URL(使用 global.asax 中的 Response.Redirect)重定向到我的旧站点。例如,用户请求 https://www.mysite.com/page.aspx?query=string,我将它们重定向到旧站点 http://old.mysite.com/page.aspx?query=string。重定向效果很好,只是在到达旧站点时缺少查询字符串。

我必须重定向的 URL 来自嵌入在客户站点中的 URL,因此我不能将它们全部更新为指向旧站点。我测试过,当我在 HTTP 下运行我的新站点时,这一切都工作正常,因此传输是 HTTP 到 HTTP,但当我执行 HTTPS 到 HTTP 时,它会失败。

关于问题是什么有什么想法吗?

谢谢, 吉姆

I have a site https:// www.mysite.com that runs completely using HTTPS (I redirect http to https in IIS). This all works fine.

I have an old version of the site http:// old.mysite.com which some users are still running on that is running over HTTP only. This all works fine.

There is 1 URL that my new site redirects (using a Response.Redirect in the global.asax) to my old site. For example the user requests https:// www.mysite.com/page.aspx?query=string and I redirect them to the old site http:// old.mysite.com/page.aspx?query=string. The redirect works well except that the query string is missing when it gets to the old site.

The URL that I have to redirect comes from a url embedded at customer sites, so I can't just update them all to point to the old site. I tested and this all works fine when I run my new site under HTTP so the transfer is HTTP to HTTP, but it fails when I do HTTPS to HTTP.

Any ideas on what the problem is?

Thanks,
Jim

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

似最初 2024-10-21 12:20:16

好吧,我已经弄清楚了,所以我会发布以防其他人遇到这个问题。我使用 IIS 7 中的 HTTP 重定向模块将我的新网站的任何 HTTP 流量重定向到 HTTPS。对于要重定向到的网址,我只有“https://www.mysite.com”。我发现一些变量可以添加到重定向 URL 中以保留查询字符串。因此,一旦我将其更新为“https://www.mysite.com$S$Q”,它就起作用了。

Alright I got it figured out so I'll post in case anyone else hits the issue. I was using the HTTP Redirect module in IIS 7 to redirect any HTTP traffic to HTTPS for my new website. For the url to redirect to I just had 'https://www.mysite.com'. I found some variables that you can add to the redirect url to keep the query string. So once I updated it to 'https://www.mysite.com$S$Q' it worked.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文