2012-12-21 18 views
5

同じApacheサーバー(ポート1848と4000)の別々の2つのポートで実行するwikiソフトウェアGititをセットアップしました。私は、彼らが実行されていることが確認されました:同じIP上の2つのポートを異なるServerNamesに向けるようにVirtualHostsを設定するにはどうすればよいですか?

http://wcaleb.rice.edu:4000
http://wcaleb.rice.edu:1848

は今、私はプロキシにhttp://wiki.wcaleb.rice.eduhttp://hist118.wcaleb.rice.eduのようなきれいなURL、これら二つのサイトをしたいです。両方のIPアドレスは128.42.173.84

です。私のサーバー管理者がこれらの名前のDNSエントリを追加しましたが、私のApache構成を動作させることができません。

NameVirtualHost *:1848 

<VirtualHost *:1848> 
    ServerName hist118.wcaleb.rice.edu 
    DocumentRoot /var/www/ 
    RewriteEngine On 
    ProxyPreserveHost On 
    ProxyRequests Off 

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

    ProxyPassReverse/ http://127.0.0.1:1848 
    RewriteRule ^(.*) http://127.0.0.1:1848$1 [P] 

    ErrorLog /var/log/apache2/error.log 
    LogLevel warn 

    CustomLog /var/log/apache2/access.log combined 
    ServerSignature On 

</VirtualHost> 

、ポート4000上のhttp://wiki.wcaleb.rice.eduのための他の同様の仮想ホスト

しかし、私は、その後 service httpd restartを発行するとき、私はHTTPDを起動するときに FAILEDメッセージを取得し、私: instructions hereに続いて、私はこのようなのVirtualHostを設定しようとしましたブラウザは http://hist118.wcaleb.rice.eduに接続できません。

私の知る限り、httpd.confの残りの部分は、ディストリビューションに付属するデフォルトのファイルです。私のサーバーはRedHat Enterpriseマシン上で実行されています。私はApacheの初心者ですから、ここには明らかな答えがあると確信していますが、設定にさまざまな調整を加えた後、私が間違っていることを理解できません。

+1

この質問は、あなたが 'httpdの-t'直接それが構文をチェックする必要があり、あなたはおそらく、構文エラーを持って実行してみることができます – Atropo

+0

serverfaultのために、よりappropiateです。 FAILEDが表示されると、サーバーは起動しませんでした。 – Collin

+0

このコマンドは 'Syntax OK'を返します。私はまた、サーバーが始まったことがないということが何を意味するのかを完全に理解していません。私は 'FAILED'メッセージが出てもWeb上の私のサイトにアクセスすることができます。 –

答えて

0

これはあなたがする必要があります。

NameVirtualHost *:80 

    <VirtualHost *:80> 
    ServerName hist118.wcaleb.rice.edu 
     DocumentRoot /var/www/ 
     RewriteEngine On 
     ProxyPreserveHost On 
     ProxyRequests Off 

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

     ProxyPassReverse/ http://127.0.0.1:1848 
     RewriteRule ^(.*) http://127.0.0.1:1848$1 [P] 

     ErrorLog /var/log/apache2/error.log 
     LogLevel warn 

     CustomLog /var/log/apache2/access.log combined 
     ServerSignature On 

</VirtualHost> 
+0

これは参考になりました。/var/log/apache2の代わりに/ var/log/httpdにログファイルがあるので、Apacheはディレクトリが存在しないためErrorLog行にアクセスするたびに窒息していました。エラーログを見て、それを見つけることができませんでした!* facepalm * –

0

NameVirtualHostVirtualHost:1848を削除(または:80に変更)してください。この練習のポイントは、Apacheがこれらのホスト名のデフォルトHTTPポート(ポート80)と、Gititがリッスンしている上位ポートへのプロキシトラフィックをリッスンするようにすることです。

関連する問題