お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2010-01-03 09:46:35

seijun
メンバ
登録日: 2007-11-14

64ビット版9.10でmod_rewrite.soが正しく機能しません。

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は本家サイトからゲットしました。

オフライン

 

#2 2010-01-03 20:08:26

epii
メンバ
登録日: 2008-12-11

Re: 64ビット版9.10でmod_rewrite.soが正しく機能しません。

mod_proxy が有効化されていないとかではないですか?

エラーログを貼り付けると回答はつきやすくなるかと思います。
(設定によりますが、 /var/log/apache2/error.log あたりです)

オフライン

 

#3 2010-01-03 22:05:55

seijun
メンバ
登録日: 2007-11-14

Re: 64ビット版9.10でmod_rewrite.soが正しく機能しません。

有り難うございます。

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の連携に失敗したようです。

オフライン

 

#4 2010-01-03 22:11:26

seijun
メンバ
登録日: 2007-11-14

Re: 64ビット版9.10でmod_rewrite.soが正しく機能しません。

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
を入れると、上記のエラーは出なくなり、連携もうまく行くようになりました。

オフライン

 

#5 2010-01-03 22:23:07

seijun
メンバ
登録日: 2007-11-14

Re: 64ビット版9.10でmod_rewrite.soが正しく機能しません。

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>

②のようにすべきらしいです。

オフライン

 

#6 2010-01-04 23:25:43

seijun
メンバ
登録日: 2007-11-14

Re: 64ビット版9.10でmod_rewrite.soが正しく機能しません。

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版にて試してみましたが、①でも②でも良いようです。

オフライン

 

Board footer

Powered by FluxBB