Używam mod_rewrite w moim htacess i nie jestem pewien, czy to ma coś wspólnego z moim problemem. Oto one:
RewriteCond $1 !^(entry.php|css|fonts|img|js|lib|plugins|resources|test|humans.txt|404.html|browserconfig.xml|manifest.json|robots.txt)
RewriteRule ^(.*)$ entry.php/$1 [L]
Zasadniczo za każdym razem, gdy przeglądarka nie znajdzie plikuressource (zwykle obraz) przekreśla mój adres URL przepisywania. Po raz pierwszy odkryłem podczas korzystania z Firefoxa, ponieważ zawsze żąda on „favicon.ico” bez względu na to, co robisz, i nie używam takiego pliku.
Obecnie używam tego w moim .htaccess, aby obejść problem:
<ifmodule mod_rewrite.c>
RedirectMatch 403 favicon.ico
RedirectMatch 403 .gif
</ifmodule>
Wpis .gif wynika z tego, że próbuje on także znaleźć plik .gif, którego nie używam.
Czy zamiast przedstawiać tutaj wszystkie typy plików, istnieje sposób, aby po prostu powiedzieć, że za każdym razem, gdy nie może znaleźć zasobu do „403”?
Dzięki,
Erick P.
Odpowiedzi:
0 dla odpowiedzi № 1Ta dyrektywa jest równoważna Przekierowaniu, alekorzysta z wyrażeń regularnych zamiast prostego dopasowywania prefiksów. Podane wyrażenie regularne jest dopasowywane do ścieżki URL, a jeśli pasuje, serwer podstawi wszelkie dopasowania w nawiasach do podanego ciągu i użyje go jako nazwy pliku. Na przykład, aby przekierować wszystkie pliki GIF do plików JPEG o podobnych nazwach na innym serwerze, można użyć:
RedirectMatch (.*).gif$ http://www.anotherserver.com$1.jpg