Apacheでmod_rewriteを有効にする方法は?


165

UbuntuシステムにLAMPスタックをインストールしました。

リダイレクトが機能していません。修正方法がわかりません。誰も私を助けることができますか?


3
私見この質問はUbuntu固有ではなく、Server Faultに移行する必要があります
パオロ

2
OPは、ランプをUBUNTUにインストールしました。Ubuntu固有の機能はどれくらい必要ですか?
wojox

1
@wojov:このケースについては知りませんが、その引数は機能しません。「Ubuntuでこのアプリケーションを使用するにはどうすればよいですか?」ほとんどがトピック外です。

23
これは「アプリケーションの使用方法」ではなく、「Ubuntuで特定の機能を有効にする方法」です。UbuntuでのApacheは、各モジュールと仮想ホストがファイルで/etc/apache2あり、a2*プログラムを使用して有効にできる異なる構成レイアウトを使用します。
-Lekensteyn

あなたはそれは、あなたが問題を絞り込むためにやっていることを説明すべきである
ericn

回答:


239

書き換えモジュールを有効にするには、「apache2 enable module rewrite」を実行します。

sudo a2enmod rewrite

変更を適用するには、ウェブサーバーを再起動する必要があります。

sudo service apache2 restart

.htaccessファイルでmod_rewriteを使用する予定がある場合は.htaccess、に変更AllowOverride Noneしてファイルの使用を有効にする必要もありますAllowOverride FileInfo。デフォルトのWebサイトの場合、編集/etc/apache2/sites-available/default

    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            # changed from None to FileInfo
            AllowOverride FileInfo
            Order allow,deny
            allow from all
    </Directory>

このような変更後、Apacheを再起動する必要があります。


18
私はAllowOverrideのすべてでより多くの成功を持っていた
バレンティンDespa

ありがとう!sudo a2enmod rewriteそしてFileInfo私のためにそれを修正しました!
d -_- b 14

22
私はそのconfigエントリを見つけた私にとっては、そのファイルは/etc/apache2/apache2.confだった
DOC_ID

はい、2つの変更で問題を修正しました。
アデリン

それは私のために働いていません。ここに質問を投稿しましたaskubuntu.com/questions/809619/failing-to-rewrite-url
Suhail Gupta

49

ubuntu 14.04および.htaccess:に関する特別な回答を追加します(上記のすばらしい回答のフォローアップとして)。

14.04では、デフォルトの構成ファイルの名前が次のように変更され000-default.confます。

sudo gedit /etc/apache2/sites-available/000-default.conf

ファイルの最後に次を追加します。

<Directory "/var/www/html">
    AllowOverride All
</Directory>

何らかの理由で、Ubuntu 14.04およびapache2では、ルートがに設定されてい/www/htmlます。あなたは古き良きに戻ってウェブサーバのルートを変更したい場合は/wwwopen 000-default.confその変更

DocumentRoot /var/www/html/

DocumentRoot /var/www/

そして、もちろんそれははずです

<Directory "/var/www">
    AllowOverride All
</Directory>

1
情報をありがとう!この/新しい方法で、すべてのWebサイトを配置するフォルダーとしてwwwを使用できます。htmlは、デフォルトでlocalhostの「website」です。ワールドへのポートを開いて遊んでいる場合に重要になる可能性があります-この方法では、ローカルホストは他のプロジェクトのフォルダを見ることができません。
ウラジミールVukanac

1
それは私のために働いていません。私は使用しています Ubuntu 14.04.4 LTS
スハイルグプタ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.