Я установил сервер разработки с Ubuntu и LAMP, но по какой-то причине .htaccess
ведет себя странно ...
Там есть сайт с набором правил, когда я их комментирую, они все еще работают, и даже когда я переименовал файл в .htaccesss
он все еще работает! Если я удалю все в файле, он все равно будет работать, перезапуска Apache каждый раз, когда я вношу изменения ...
Я попытался переустановить Apache и переустановил модуль перезаписи, но он все еще не работает ...
Любые новые правила, которые я добавляю, похоже, не имеют никакого влияния, поэтому кажется, что правила читаются откуда-то еще.
Если я вызываю синтаксическую ошибку, помещая / в .htaccess
file Я получаю ошибку сервера 500.
Есть ли место с кешированными правилами? У меня никогда раньше не было такой проблемы!
РЕДАКТИРОВАТЬ: Я решил эту проблему, добавив Options -Multiviews
в моем .htaccess
файл
Возможно, стоит проверить, происходит ли кеширование на стороне клиента, а не на стороне сервера. Firefox будет кэшировать любые 301-перенаправленные (НЕ ПЕРЕМЕЩАЕТСЯ) адреса в течение нескольких дней. Используйте 302 (временное) перенаправление. Чтобы исправить «старые цели», вы можете настроить перенаправление страницы html на другой домен (например, без www) и т. Д., Чтобы запретить firefox использовать свой кеш.
Есть ли место с кешированными правилами? У меня никогда раньше не было такой проблемы!
(обычно) не на стороне сервера, а на стороне клиента / браузера; попробуйте также очистить кеш-память вашего браузера
ИЗМЕНИТЬ 1
Предложение: уберите файл .htaccess из корневого каталога. когда есть еще активные правила перезаписи, они должны быть где-то: либо в вашем docroot, либо в <virtualserver>
- конфиг. чтобы отключить htaccess для вашего docroot, добавьте в конфигурацию сервера следующее:
<virtualHost>
...
DocumentRoot /some/path
...
<Directory /some/path>
AllowOverride None
</Directory>
</VirtualHost>
Если вы уверены, что у вас нет RewriteRule в вашей конфигурации сервера И с приведенным выше фрагментом все еще получаются перезаписи, я чувствую запах рыбы
Это может не помочь всем, но в моем случае я обнаружил, что у меня есть старая копия .htaccess, находящаяся в родительском каталоге моего сайта, на самом деле пара каталогов выше моей папки apache htdocs, и кажется, что apache проходит вверх по дереву каталогов и должен объединить это и мой .htaccess в моей папке htdocs. Как только я обнаружил этот ошибочный файл и удалил его, перенаправление, которое не могло умереть, прекратило перенаправление.
Добавить Options -Multiviews
в .htaccess
файл.
Ответил Адам но не было видно, так что вот оно, работает!