
Ubuntu日本語フォーラム

ログインしていません。
VirtualBox上の64ビットサーバー版9.10で、mod_rewrite.soが正しく機能しません。
http://takanory.net/zope/apache/connect/
を見て、
sudo a2enmod rewriteとし、/etc/apache2/sites-available/defaultに
<VirtualHost *:80>
ServerName www.ubuntu-server.localhost
DocumentRoot /var/www
RewriteEngine On
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow FROM all
</Directory>
RewriteRule ^/Zope(.*) http://www.ubuntu-server.localhost:8080/VirtualHostBase/http/www.ubuntu-server.localhost:80/VirtualHostRoot/_vh_Zope/$1 [L,P]
</VirtualHost>を付け加えて、Apacheをリスタートし、
http://www.ubuntu-server.localhost で、「It's Works」が出るのですが、
http://www.ubuntu-server.localhost/Zope とやると、404エラーが出ます。これは、rewrite機能が働いていないためと思われますが、
どうしてrewrite機能が働かないのでしょうか。ご教示いただければ幸いです。
なお、32ビットデスクトップ版では問題ないようです。ubuntuのsynapticでは、依存関係のエラーが出ますので、zopeは本家サイトからゲットしました。
オフライン
mod_proxy が有効化されていないとかではないですか?
エラーログを貼り付けると回答はつきやすくなるかと思います。
(設定によりますが、 /var/log/apache2/error.log あたりです)
オフライン
有り難うございます。
epii による投稿:
mod_proxy が有効化されていないとかではないですか?
エラーログを貼り付けると回答はつきやすくなるかと思います。
(設定によりますが、 /var/log/apache2/error.log あたりです)
defaultの先頭に
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_connect_module /usr/lib/apache2/modules/mod_proxy_connect.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
LoadModule proxy_ftp_module /usr/lib/apache2/modules/mod_proxy_ftp.so
をつけておりましたので、mod_proxyは有効になっていると思います。
いろいろやっているうちに、
#127.0.0.1 www.ubuntu-server.localhost localhost ubuntu-server ・・・① 127.0.0.1 www.ubuntu-server.localhost ・・・②
最初は①のようになっていましたが、コメントをつけて②のようにしたら、よくは分かりませんが、うまく動くようになりました。
ただし
seijun@ubuntu-server:/etc/apache2/sites-available$ sudo /etc/init.d/apache2 restart sudo: unable to resolve host ubuntu-server * Restarting web server apache2 apache2: apr_sockaddr_info_get() failed for ubuntu-server apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName ... waiting .apache2: apr_sockaddr_info_get() failed for ubuntu-server apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
の警告が出ます。と言いますか、最初は上記の警告が出ておりましたので、①のようにしたら出なくなったので、メデタシ、メデタシと思っていたら、肝心のApacheとZopeの連携に失敗したようです。
オフライン
seijunです。
seijun@ubuntu-server:/etc/apache2/sites-available$ sudo /etc/init.d/apache2 restart sudo: unable to resolve host ubuntu-server * Restarting web server apache2 apache2: apr_sockaddr_info_get() failed for ubuntu-server apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName ... waiting .apache2: apr_sockaddr_info_get() failed for ubuntu-server apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
/etc/hostsに
127.0.0.1 ubuntu-server
を入れると、上記のエラーは出なくなり、連携もうまく行くようになりました。
オフライン
seijunです。忘れていました。
seijun による投稿:
コード:
<VirtualHost *:80> ServerName www.ubuntu-server.localhost DocumentRoot /var/www RewriteEngine On <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow FROM all </Directory> # RewriteRule ^/Zope(.*) http://www.ubuntu-server.localhost:8080/VirtualHostBase/http/www.ubuntu-server.localhost:80/VirtualHostRoot/_vh_Zope/$1 [L,P]・・・① RewriteRule ^/Zope(.*) http://localhost:8080/VirtualHostBase/http/www.ubuntu-server.localhost:80/VirtualHostRoot/_vh_Zope/$1 [L,P]・・② </VirtualHost>
②のようにすべきらしいです。
オフライン
seijunです。ZopeとApache2との連携について手ですが、
seijun による投稿:
seijunです。忘れていました。
seijun による投稿:
コード:
<VirtualHost *:80> ServerName www.ubuntu-server.localhost DocumentRoot /var/www RewriteEngine On <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow FROM all </Directory> # RewriteRule ^/Zope(.*) http://www.ubuntu-server.localhost:8080/VirtualHostBase/http/www.ubuntu-server.localhost:80/VirtualHostRoot/_vh_Zope/$1 [L,P]・・・① RewriteRule ^/Zope(.*) http://localhost:8080/VirtualHostBase/http/www.ubuntu-server.localhost:80/VirtualHostRoot/_vh_Zope/$1 [L,P]・・② </VirtualHost>②のようにすべきらしいです。
気になってUbuntu-Desktop版にて試してみましたが、①でも②でも良いようです。
オフライン