2017-11-11 10 views
1

私はapache2 Webサーバー上でnodejsアプリケーションを実行しています。ドメインページexample.comにアクセスしようとすると、アプリページの代わりにデフォルトのApacheページが表示されます。しかし、これはこれが動作する設定Apacheを介してNodeJSアプリケーションを提供する

<VirtualHost *80> 
    ServerName example.com 
    ServerAlias www.example.com 

    ProxyRequests off 
    ProxyPreserveHost On 
    ProxyVia Full 

    <Proxy *> 
     Order deny,allow 
     Allow from all 
    </Proxy> 

    <Location /> 
     ProxyPass http://serverip:8090 
     ProxyPassReverse http://serverip:8090 
    </Location> 

</VirtualHost> 

答えて

1

あるノード・アプリケーションに

を表示example.com:8090に行く上で、ちょうどそれがイデオロギー的に最もエレガントな解決策ではないことを知っています。

# Main site proxy 
<VirtualHost *:80> 
    ServerAlias www.example.com 
    ServerName example.com 
    ProxyPreserveHost On 

    <Proxy *> 
     Order allow,deny 
     Allow from all 
    </Proxy> 
    ProxyPass/http://nodejsIP:8090/ 
    ProxyPassReverse/http://nodejsIP:8090/ 
</VirtualHost> 



    # Subdomain proxies 
    <VirtualHost *:80> 
     ServerAlias www.api.example.com 
     ServerName api.example.com 
     ProxyPreserveHost On 

     <Proxy *> 
      Order allow,deny 
      Allow from all 
     </Proxy> 
     ProxyPass/http://nodejsIP:8090/api/ 
     ProxyPassReverse/http://nodejsIP:8090/api/ 
    </VirtualHost> 
    <VirtualHost *:80> 
     ServerAlias www.apps.example.com 
     ServerName apps.example.com 
     ProxyPreserveHost On 

     <Proxy *> 
      Order allow,deny 
      Allow from all 
     </Proxy> 
     ProxyPass/http://nodejsIP:8090/apps/ 
     ProxyPassReverse/http://nodejsIP:8090/apps/ 
    </VirtualHost> 

注:Apacheサーバーとノードサーバの両方が同じボックスをオフに実行しているので、同じIPを持っている場合は、nodejsIP

+0

ためhttp://localhostを使用する。これは、おかげでたくさん働いていました! – JCDenton

関連する問題