Я настраиваю apache2 на debian и хотел бы разрешить доступ только robots.txt для поисковых систем, в то время как другие файлы .txt ограничены, я попытался добавить следующее в .htaccess, но не повезло:
<Файлы robots.txt>
Заказать разрешить, запретить
Разрешить от всех
</Files>
<Файлы * .txt>
Заказ запретить, разрешить
Запретить от всех
</Files>
Может ли кто-нибудь помочь или подсказать? Я новичок в Apache, большое спасибо.
Используйте mod_rewrite
RewriteEngine On
RewriteCond %{REQUEST_URI} !/robots\.txt$ [nocase]
RewriteRule \.txt$ - [forbidden,last]
Во-первых, убедитесь, что механизм перезаписи включен.
Затем используйте отрицательное совпадение (!
), чтобы применить условие к RewriteRule
который исключает любой URI, заканчивающийся на "/robots.txt"
Наконец, если URI заканчивается на «.txt», выдайте 403 Forbidden.
РЕДАКТИРОВАТЬ: не забывайте, что механизм сравнения использует регулярное выражение, поэтому вам нужно избегать специальных символов (т.е. .
)