https://non-www重新定向到的问题https://www
我有一个网站,最近从http://转到https:// 这个站点是用IIS7上的MVC构建的,我知道我应该有4个绑定 主要的一个:https://non-www重新定向到的问题https://www,http,iis,https,binding,Http,Iis,Https,Binding,我有一个网站,最近从http://转到https:// 这个站点是用IIS7上的MVC构建的,我知道我应该有4个绑定 主要的一个: (端口:443-ip地址:) 和其他3个都指向301,请重新指向上述内容 http://www.example.com - (port:80 - ip address: * -re-direct works) http://example.com - (port:80 - ip address: * -re-direct works) htt
(端口:443-ip地址:) 和其他3个都指向301,请重新指向上述内容
http://www.example.com - (port:80 - ip address: * -re-direct works)
http://example.com - (port:80 - ip address: * -re-direct works)
https://example.com - (port:443 - ip address: * -re-direct does not work)
试图解决底部一个失败的原因,但无法访问站点。找不到服务器DNS地址
下面是我用来将http重定向到https的代码
// The base only redirects GET, but we added HEAD as well. This avoids exceptions for bots crawling using HEAD.
// The other requests will throw an exception to ensure the correct verbs are used.
// We fall back to the base method as the mvc exceptions are marked as internal.
if (!String.Equals(filterContext.HttpContext.Request.HttpMethod, "GET", StringComparison.OrdinalIgnoreCase)
&& !String.Equals(filterContext.HttpContext.Request.HttpMethod, "HEAD", StringComparison.OrdinalIgnoreCase))
{
base.HandleNonHttpsRequest(filterContext);
}
// Redirect to HTTPS version of page
// We updated this to redirect using 301 (permanent) instead of 302 (temporary).
string url = "https://" + filterContext.HttpContext.Request.Url.Host + filterContext.HttpContext.Request.RawUrl;
filterContext.Result = new RedirectResult(url, true);
你知道底部装订有什么问题吗?试图在谷歌站长搜索控制台上设置第四个属性,但由于DNS失败,显然无法设置
非常感谢您的帮助。干杯最好在web服务器级别执行此类操作,而不是在应用程序代码中执行。 对于IIS,您需要通过添加重写规则来更改文件Web.config。 我无法测试它,但您应该添加如下内容:
<rewrite>
<rules>
<rule name="Redirect to www" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions>
<add input="{HTTP_HOST}" pattern="example.com" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:0}" />
</rule>
<rule name="HTTP Redirect to HTTPS" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://www.example.com/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
问题在于我们的域提供商的DNS。您好,感谢您的回复。不幸的是,这也没有乐趣。我担心绑定或GoDaddy级别有问题。我觉得奇怪的是,http://non-www到https://www工作正常,而https://non-www到https://www工作不正常。即使没有re-direct,我也无法让https://non-www的流量正常工作:(你试过吗?