2017-06-03 3 views
0

Ich habe Apache 2.4.7 ausgeführt und derzeit alle meine Datenverkehr zu einem Back-End-Server auf 8080 auf dem gleichen Server/Instanz.So konfigurieren Sie Apache2-Subdomains für die Weiterleitung an verschiedene Server

Ich möchte meinen www Verkehr zu den bestehenden 8080

jemand gehen auf einen neuen Server/Instanz und alle meine anderen Sub-Domains (app, api, etc.) gehen Kann eine Richtung zur Verfügung stellen?

Hilfe geschätzt.

<VirtualHost *:80> 
ProxyPreserveHost On 
ServerAdmin [email protected] 
ServerName example.com 
Redirect "/" "https://www.example.com/" 
    RewriteEngine On 
    RewriteCond %{HTTP:X-Forwarded-Proto} !https 
    RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} 
ServerAlias www.example.com 
DocumentRoot /var/www/example.com/public_html/ 
Redirect "/ft/" "/" 
ErrorLog /var/www/example.com/logs/error.log 
CustomLog /var/www/example.com/logs/access.log combined 
ProxyPass/http://0.0.0.0:8080/ 
ProxyPassReverse/http://0.0.0.0:8080/ 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 

Antwort

0

Wenn Sie eine externe Umleitung auf den neuen Server für die www Sub-Domain tun wollen, müssen Sie die folgende Konfiguration, unter den anderen Rewrite-Regeln hinzuzufügen:

RewriteCond ${HTTP_HOST} ^www\. [NC] 
RewriteRule^https://www.example.com/${REQUEST_URI} [L,R=301] 

Und Sie müssten die ServerAlias Richtlinie entfernen. Dies setzt auch voraus, dass Sie DNS bereits auf den neuen Host ausgerichtet haben.


Wenn das neue Feld der www Inhalt dient, ist eine weitere gesicherte Server sein, würden Sie einen anderen virtuellen Host benötigen. Fügen Sie die folgende an der Spitze statt:

<VirtualHost *:80> 
    ServerName www.example.com 
    ProxyPass/http://other-box/ 
    ProxyPassReverse/http://other-box/ 
</VirtualHost> 

Und Sie würden immer noch die ServerAlias Richtlinie entfernen müssen.

Verwandte Themen