![포트를 제외한 모든 것을 HTTPS로 다시 쓰는 방법](https://rvso.com/image/1618774/%ED%8F%AC%ED%8A%B8%EB%A5%BC%20%EC%A0%9C%EC%99%B8%ED%95%9C%20%EB%AA%A8%EB%93%A0%20%EA%B2%83%EC%9D%84%20HTTPS%EB%A1%9C%20%EB%8B%A4%EC%8B%9C%20%EC%93%B0%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
통계를 얻기 위해 웹서버에 Netdata를 설치했습니다. 내가 사용해야 할 것을 보려면 다음을 수행하십시오.http://무엇이든:19999년. 그러나 다음을 사용하여 모든 것이 내 웹 서버의 HTTPS로 리디렉션됩니다.
RewriteEngine On
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
포트 19999로 향하는 모든 것이 HTTP로 이동하도록 하는 우아한 방법이 있습니까? (그리고 계속해서 HTTPS로 리디렉션되지 않습니다..)
RewriteRule 쇼 앞에 몇 가지 조건을 두면 완료될 수 있을 것 같은데요, 그렇죠? 하지만 어떻게? rewriterules에 대한 매뉴얼 페이지는 나를 혼란스럽게 하기 때문에 어떤 도움이라도 환영합니다!
답변1
이 코드를 추가하면 특정 포트를 사용하는 모든 서비스가 HTTPS 대신 HTTP를 사용하도록 리디렉션할 수 있습니다.
RewriteEngine On
RewriteCond %{SERVER_PORT} 19999
RewriteRule ^(.*)$ http://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
이 코드를 사용하여 다른 포트도 필터링할 수도 있습니다.
RewriteCond %{SERVER_PORT} !19999
19999 포트를 사용하지 않는 모든 웹페이지에 대해 다음 코드가 실행됩니다.
답변2
사용해 보세요리디렉션대신에:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>