다음 줄의 전체 의미는 무엇입니까
RewriteRule ^/(.*) http://127.0.0.1:5050/$1 [L,P]
우분투 14.4에는 Python으로 실행되는 세 가지 응용 프로그램이 있습니다. 아래 링크와 같이 표시됩니다
IP:8181 (headphones)
IP:8081 (sickbeard)
IP:5050 (couchpotato)
나는 또한 해당 서버에 HTTPS를 설치했습니다. https://82.211.213.130/
하지만 위의 세 사이트를 다음과 같은 방식으로 다시 작성하고 싶습니다.
same IP/couchpotato -- this is working only
same IP/sickbeard -- Not working
same IP/headphones -- not working
/sickbeard 또는 /headphones를 보고 싶을 때 항상 Couchpotato 페이지가 나타납니다.
이 문제를 해결하는 데 도움을 줄 수 있나요?
Apache 구성은 다음과 같습니다.
<VirtualHost *:443>
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
</VirtualHost>
<VirtualHost *:443>
ServerName lost-world.dk
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
RewriteEngine On
RewriteRule ^/(.*) localhost:5050/$1 [L,P]
ProxyPreserveHost on
# RequestHeader add X-Vhm-Root /couchpotato
</VirtualHost>
<VirtualHost *:443>
ServerName lost-world.dk
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
RewriteEngine On
RewriteRule ^/(.*) localhost:8081/$1 [L,P]
ProxyPreserveHost on
# RequestHeader add X-Vhm-Root /sickbeard
</VirtualHost>
답변1
한꺼번에 너무 많은 질문을 하신 것 같아요. nginx
특히 여러 가상 호스트를 처리할 때 구성이 훨씬 쉽기 때문에 를 사용하는 것이 좋습니다 .
RewriteRule ^/(.*) http://127.0.0.1:5050/$1
이는 사용자가 방문한 URL과 일치하는 정규식(regex) 규칙입니다.
이 규칙은 '도메인(www.example.tld/WHATEVER) 뒤의 모든 문자를 가져와 다음과 같이 다시 작성합니다.http://127.0.0.1:5050/뭐든지.
괄호를 ( )
'캡처'라고 하며, 괄호는 $1
거기에 첫 번째 캡처를 넣습니다.
다음 규칙을 시도해 볼 수 있습니다.
RewriteRule ^/couchpotato http://127.0.0.1:5050
그만큼공식 문서몇 가지 훌륭한 실제 사례를 제공합니다.