#.htaccess
Вопрос:
У меня есть сайт, над которым я работаю, чтобы сменить домен на новый, и в настоящее время у нас возникают проблемы с этим правилом перезаписи.
Примеры того, что происходит в настоящее время:
example.com/services чтобы example.com/live/services/
example.com/services/ (не перенаправлено)
example.com/ (не перенаправлено)
В index.html файлы и т. Д. В настоящее время находятся в подпапке /live/, и правило перезаписи должно отображать содержимое из /live/, Но когда в конце URL-адреса не вводится косая черта, оно перенаправляет на /live/xxx, а не на содержимое.
Это правило, которое, я считаю, вызывает проблемы:
RewriteEngine On
RewriteBase /
RewriteCond "%{DOCUMENT_ROOT}/live%{REQUEST_URI}" -f [OR]
RewriteCond "%{DOCUMENT_ROOT}/live%{REQUEST_URI}" -d
RewriteRule "^(. )" "/live/$1" [L]
Комментарии:
1. Вероятно, это эффект mod_dir, который выдает перенаправление, если доступ к папке осуществлялся без завершающей косой черты. Вы можете отключить
DirectorySlash
— но прежде чем это сделать, проверьте предупреждения в документации. Здесь может быть более разумно, чтобы вы сделали косую черту необязательной в конце своего шаблона, а затем добавили ее к замене.2. @CBroe Я только что попробовал это, но, к сожалению, при обращении к нему просто отображалась страница индекса каталога.