문제

I need to set up a rule in URL Rewrite on IIS8 to remove the www from all https requests.

Below is what I want to achieve. I do not care if we remove www from all urls.

http://sitename.com/sub        ->    http://sitename.com/sub
http://www.sitename.com/sub    ->    http://www.sitename.com/sub

https://sitename.com/sub       ->    https://sitename.com/sub
https://www.sitename.com/sub   ->    https://sitename.com/sub
도움이 되었습니까?

해결책

I got it to work with this rule.

<rule name="Remove WWW" enabled="true" stopProcessing="true">
   <match url="(.*)" />
   <conditions>
      <add input="{HTTP_HOST}" pattern="^(www\.)(sitename\.com)" />
   </conditions>
   <action type="Redirect" url="https://{C:2}/{R:1}" />
</rule>

I also added this rule above it to force all requests to https

<rule name="HTTP to HTTPS redirect" stopProcessing="true">
   <match url="(.*)" />
   <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
      <add input="{HTTPS}" pattern="off" ignoreCase="true" />
   </conditions>
   <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top