Próbuję dopasować adresy URL tego typu:
http://www.example.com/image/12345
Chciałbym wtedy sprawdzić, czy ten plik istnieje:
http://www.example.com/files/image_12345.jpg
Jeśli tak, chciałbym przepisać adres URL, aby wskazał ten plik.
Jeśli nie, chciałbym przepisać adres URL, aby wskazał mój skrypt do generowania obrazu:
http://www.example.com/img_gen.php?id=12345
Oto co mam do tej pory:
RewriteCond %{REQUEST_FILENAME} ^/image/([0-9]+)$
RewriteCond %{DOCUMENT_ROOT}/files/images_%1.jpg !-f
RewriteRule ^image/([0-9]+)$ img_gen.php?id=$1 [L]
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^image/([0-9]+)$ /files/images_$1.jpg [L]
Ale dostaję tylko 404.
.htaccess
mod-rewrite
rewritecond
jawns317
źródło
źródło
Odpowiedzi:
Jeśli nie możesz dowiedzieć się, co robią Twoje reguły przepisywania, powinieneś włączyć RewriteLog z pewną zwiększoną szczegółowością:
To powinno dać ci całkiem dobrą pozycję wyjściową w dalszym badaniu tego, co dzieje się źle.
źródło