Вам нужно перезапустить apache, чтобы переписать правила в нем.htaccess вступит в силу?
я толкнул моего .htaccess файлы для производства разъединяет, но они не работают. Будет ли перезапуск следующим шагом, или я должен проверить что-то еще.
7 ответов:
перезагрузка не требуется для внесения изменений .htaccess. Что-то не так.
убедитесь, что ваш .htaccess включает в себя оператор
RewriteEngine on
который требуется, даже если он также присутствует в httpd.конф. Также проверьте это .htaccess читается процессом httpd.
Проверьте error_log-он сообщит вам о любых ошибках.htaccess если он используется. Положить намеренно синтаксическая ошибка в .htaccess-это хорошая проверка, чтобы убедиться, что файл используется-Вы должны получить ошибку 500 на любой странице в том же каталоге.наконец, вы можете включить перезапись журнала с помощью команд, как показано ниже в вашем httpd.conf:
RewriteLog "logs/rewritelog"
RewriteLogLevel 7
сгенерированный таким образом файл журнала даст вам кровавую информацию о том, какие правила перезаписи совпадают и как они обрабатывались.
нет:
Apache позволяет осуществлять децентрализованное управление конфигурацией с помощью специальных файлов, размещенных внутри веб-дерева. Специальные файлы обычно называются
.htaccess
, но и любое имя может быть указано в AccessFileName
из документации apache: Чаще всего проблема заключается в том, что AllowOverride не установлен таким образом, что ваши директивы конфигурации выполняются. Убедитесь, что у вас нет AllowOverride None в действии для рассматриваемой области файла. Хороший тест для этого, чтобы положить мусор в вашем .htaccess файл и перезагрузить. Если ошибка сервера не генерируется, то у вас почти наверняка есть AllowOverride None в действительности.
только если у вас есть не добавлен модуль mod_rewrite в Apache.
вам нужно только перезапустить Apache, если вы измените любой Апач ".conf " файлы.
У меня та же проблема, и кажется, что сообщение PiedPiper о AllowOverride было самым полезным. Проверьте свой файл httpd.conf файл для "AllowOverride" и убедитесь, что он установлен на все.
на всякий случай .перезапуск htaccess не требуется, если он не работает вероятные причины включают.
AllowOverride не может быть установлено, какой пользователь может установить внутри httpd.conf или, возможно, придется связаться с администратором сервера.
Проверьте имя файла .htaccess это должно быть .htaccess не htaccess.тхт см. здесь для руководства, как создать один.
попробуйте использовать
Options -Indexes
илиdeny all
вид простой директивы, чтобы увидеть, если он работает или нет.очистить кэш браузера каждый раз, если есть правило для перенаправления или аналогичное, если предыдущее перенаправление кэшируется, кажется, что все не работает.