2011-10-26 5 views
2

Apacheサーバは非常に基本的な設定でセットアップされています。私はApacheから1つのWebサイトだけを提供していましたが、example.comと呼んでいます。 httpd.confファイル内には、URLにwwwを常に表示するようにWebサイトに強制するコードがありました。Apache - 仮想ディレクトリを追加した後、mod_rewriteを使用できなくなりました。

私は最近、サイトのサブドメインblog.example.comを追加しました。これを行うために、私はhttpd.confファイル内に2つの仮想ディレクトリディレクティブを作成する必要がありました。この直後

NameVirtualHost *:80 
<VirtualHost *:80> 
ServerName example.com 
DocumentRoot /var/www/html 
</VirtualHost> 
<VirtualHost *:80> 
ServerName blog.example.com 
DocumentRoot /var/www/blog 
</VirtualHost> 

、私は私の書き換えコードを保持:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC] 
RewriteCond %{HTTP_HOST} !^$ 
RewriteRule ^/(.*)   http://www.example.com/$1 [L,R] 

問題は、この仮想ディレクトリのコードを追加した後、書き換えコードは、もはや機能していることではありません。私は以下のDirectoryディレクティブを作成しようとしましたが、まったく動作しないようです。

<Directory "/var/www/html"> 
Options Indexes MultiViews FollowSymLinks 
Order Deny,Allow 
Allow from all 
AllowOverride All 
</Directory> 

はまた、私は、ウェブサイトのHTMLフォルダに.htaccessファイルを作成し、Apacheを再起動してみましたが、私はそこに入れても何も全く気づいていないばかりれます。

ご協力いただきまして誠にありがとうございます。ありがとう!元のポスターによるコメントから

+0

これはすべて、httpd.confファイルにありますか、別のファイルの直後のものか、別のファイルですか? – animuson

+0

これはすべてhttpd.confファイルにあります。 –

+0

さて、私はそれを理解しました。私はちょうど開始と終了指示の中で書き換えロジックを移動する必要がありました。 help @animusonに感謝します。 –

答えて

0

回答:

[OK]を、私はそれを考え出しました。私はちょうど開始と終了指示の中で書き換えロジックを移動する必要がありました。ヘルプ@animusonに感謝します。 - Henry Wrinkler

関連する問題