2017-06-03 13 views
0

私はApache 2.4.7を実行しています。現在、すべてのトラフィックは同じサーバー/インスタンス上の8080上のバックエンドサーバーに送信されています。別のサーバーにルーティングするapache2サブドメインを構成する方法

私は誰かが、いくつかの方向性を提供することができ、私のWWWのトラフィックは、既存の8080

に行くために新しいサーバー/インスタンスとすべての私の他のサブドメイン(などのアプリ、API、)に行きたいですか?

ヘルプありがとうございます。

<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 

答えて

0

あなたはwwwサブドメインの新しいサーバーに外部へのリダイレクトを行いたい場合は、ほかの書き換えルールの下で、あなたの設定に以下を追加する必要があります:

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

ServerAlias指示文を削除する必要があります。これは、すでにDNSを新しいホストに向けていることを前提としています。


wwwコンテンツを提供する新しいボックスが別の裏打ちされたサーバーにする場合は、別の仮想ホストが必要になります。

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

そして、あなたはまだServerAliasディレクティブを削除する必要があります:代わりに先頭に次の行を追加します。

関連する問題