Localhostへのすべてのリクエストを/ var/wwwの静的ファイルに送信しながら、test.localへのすべてのリクエストを127.0.0.1:8080で実行しているWEBrickサーバーにプロキシする基本的な仮想ホストをセットアップしようとしています。 Ubuntu 10.04を実行しています。
Libapache2-mod-proxy-htmlをインストールし、モジュールでa2enmodプロキシを有効にしました。また、仮想ホストを有効にしました。しかし、test.localにアクセスすると、常に500というサーバーエラーが発生し、すべてのログから次のことがわかります。
[Thu Mar 03 01:43:10 2011] [warn] proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
これが私の仮想ホストです:
<VirtualHost test.local:80>
LoadModule proxy_module /usr/lib/Apache2/modules/mod_proxy.so
ServerAdmin webmaster@localhost
ServerName test.local
ProxyPreserveHost On
# prevents this folder from being proxied
ProxyPass /static !
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
ErrorLog /var/log/Apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/Apache2/access.log combined
そしてこれがmod_proxyの私の設定です:
<IfModule mod_proxy.c>
#turning ProxyRequests on and allowing proxying from all may allow
#spammers to use your proxy to send email.
ProxyRequests Off
<Proxy *>
# default settings
#AddDefaultCharset off
#Order deny,allow
#Deny from all
##Allow from .example.com
AddDefaultCharset off
Order allow,deny
Allow from all
</Proxy>
# Enable/disable the handling of HTTP/1.1 "Via:" headers.
# ("Full" adds the server version; "Block" removes all outgoing Via: headers)
# Set to one of: Off | On | Full | Block
ProxyVia On
</IfModule>
誰かが私が間違っていることを知っていますか?ありがとう
mod_proxy_http
モジュール(HTTPサーバーへのプロキシに必要)をロードしていないようです。私の目の前にはUbuntu 10.04がありませんが、IIRCは次のようなものです。
Sudo a2enmod proxy_http
選択した回答の著者のコメントと同じエラーが表示されたため、上記の回答は役に立ちませんでした。しかし、私は次の投稿を見つけて、私の問題を解決した変更をしました:
Sudo /usr/sbin/setsebool -P httpd_can_network_connect 1
ソース: http://allscm.com/archives/Apache2-proxy-disabled-connection-on-localhost.html