2013-04-10 13 views
6

私のWordPressサイトの.htaccessファイルにこれらの書き換えルールを見つけました:WordPressの書き換えルールの説明

RewriteEngine On 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 

私は、これは基本的にはindex.phpにすべてを指していることを知っています。しかし、どのように機能するのですか?どのようなルールが何をしますか?

+0

私は同じ質問(http://stackoverflow.com/q/35303598/2983568)を持っており、詳細な説明はhttp://glennmessersmith.com/pages/wphtaccess.htmlで見つかりました。 – supafly

答えて

8

私はここにいくつかの参照が見つかりました:http://httpd.apache.org/docs/current/mod/mod_rewrite.html

RewriteEngine Onは書き換えモジュールを有効にします。

RewriteRule ^index\.php$ - [L]index.phpが呼び出された場合、他のルールは実行されません。 -は、書き換えが発生しないことを確認するもので、[L]フラグは他のルールを実行しないことを示します。

RewriteCond %{REQUEST_FILENAME} !-fは、次の書き換えルールに条件を追加します。この状態は、要求されたファイル名がではなく、既存のファイルである!)であることを示します。

RewriteCond %{REQUEST_FILENAME} !-dは同じですが、既存のディレクトリです。

RewriteRule . /index.php [L]すべて.)は/index.phpに書き換え、これは([L])を実行するための最後のルールであることをすべきであると述べています。

関連する問題