다음을 사용하여 웹사이트 스캔하기https://observatory.mozilla.org나에게 다음과 같은 오류가 발생합니다.http에서 https로의 초기 리디렉션은 다른 호스트로 이루어지므로 HSTS가 방지됩니다..
질문
- 이것이 내 설정의 실제 문제인가요, 아니면 하위 도메인이 동일한 도메인의 일부로 표시되지 않는 도구의 버그인가요?
- 아래의 추가 정보를 바탕으로 내가 누락되었을 수 있는 내용을 조언해 줄 수 있는 사람이 있나요?
세부 사항
이 사이트의 도메인은 Google Domains에 등록되어 있습니다. 다음을 통해 사이트에 액세스하는 모든 사람이 example.com
자동으로 리디렉션되도록 하기 위해 www.example.com
다음 규칙을 사용하여 하위 도메인 전달을 설정했습니다.
example.com → https://www.example.com
Permanent redirect (301), Forward path
또한 (asp.net) 사이트에는 web.config
모든 HTTP 연결을 HTTPS로 리디렉션하고 HTTP 헤더를 추가하는 규칙이 있습니다 Strict-Transport-Security
(HTTPS를 통해서만 제공되는 경우 유명한 설명에 따라).스캇 한셀만 블로그님의 조언):
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
</rules>
<outboundRules>
<rule name="Add Strict-Transport-Security when HTTPS" enabled="true">
<match serverVariable="RESPONSE_Strict_Transport_Security" pattern=".*" />
<conditions>
<add input="{HTTPS}" pattern="on" ignoreCase="true" />
</conditions>
<action type="Rewrite" value="max-age=63072000; includeSubDomains; preload" />
</rule>
</outboundRules>
</rewrite>
<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
<!-- add name="Strict-Transport-Security" value="max-age=63072000; includeSubDomains; preload" / -->
<add name="Content-Security-Policy" value="default-src 'self';" />
<add name="X-Content-Type-Options" value="nosniff" />
<add name="X-Frame-Options" value="DENY" />
<add name="X-Xss-Protection" value="1; mode=block" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
사이트 자체는 Azure에서 호스팅됩니다(Visual Studio Subscription 무료 크레딧에 따라). 사이트의 URL은 이고 Google Domains에는 맞춤 리소스 레코드 아래에 을 example.azurewebsites.net
가리키는 CName이 있습니다 .www
example.azurewebsites.net