2013-04-10 11 views
6

Znalazłem te reguły przepisywania w .htaccess mojej stronie WordPress:Wyjaśnienie w sprawie zasad przepisywania WordPress'

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

wiem, że to w zasadzie wszystko, co odnosi się do index.php. Ale jak to działa? Jaka zasada co robi?

+0

Miałem to samo pytanie (http://stackoverflow.com/q/35303598/2983568) i znalazłem szczegółowe wyjaśnienie tutaj: http://glennmessersmith.com/pages/wphtaccess.html – supafly

Odpowiedz

8

znalazłem pewne odniesienia tutaj: http://httpd.apache.org/docs/current/mod/mod_rewrite.html

RewriteEngine On umożliwia moduł przepisywania.

RewriteRule ^index\.php$ - [L] zapewnia, że ​​jeśli zostanie wywołana index.php, nie zostaną wykonane żadne inne reguły. - polega na upewnieniu się, że nie nastąpi przepisanie, a flaga [L] wskazuje, że nie należy wykonywać żadnych innych reguł.

dodaje warunek do następującej reguły przepisywania. Ten warunek mówi, że żądana nazwa pliku to , a nie (!) istniejący plik.

RewriteCond %{REQUEST_FILENAME} !-d jest taki sam, ale dla istniejącego katalogu.

RewriteRule . /index.php [L] mówi, że wszystko (.) powinny być zapisane do /index.php, i że jest to ostatnia zasada wykonać ([L]).