다음 줄의 전체 의미는 무엇입니까

다음 줄의 전체 의미는 무엇입니까

다음 줄의 전체 의미는 무엇입니까

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

그만큼공식 문서몇 가지 훌륭한 실제 사례를 제공합니다.

관련 정보