я знаю, что на этот вопрос уже задавали / отвечали уже несколько раз, но я просто не могу пройти мимо него. Итак, мои извинения ...
Находясь в фазе разработки сайта, я хочу, чтобы в адресной строке браузера отображалось: domain.com/dev/item
Я бы хотел, чтобы RewriteRule изменил его на: domain.com/dev/index.php?p=item
Я использую для этого файл .htaccess, расположенный в каталоге public_html. .htaccess в public_html / dev, который работает нормально, настроен на перенаправление всех, кто не использует мой ip, на domain.com. моя версия apache 2.2.15, и я подтвердил, что могу перенаправить, используя .htaccess, но .htacess верхнего уровня просто не работает. вот код, который я использую:
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^dev/(.*)$ dev/index.php?p=$1 [NC]
#variations tried: ^dev/(.*)+$, ^dev/(.*)+?$
, включая варианты, приводит к 404, / dev / элемент не найден. удаление dev / from ^ dev /(.*)$ приводит к правильному формату URL, но следующие переменные сервера:
[REDIRECT_QUERY_STRING] => p=
[REDIRECT_URL] => /404.shtml
[QUERY_STRING] => p=
[REQUEST_URI] => /dev/item
Моя цель - внести небольшие изменения в поддержку этого типа перезаписи как для живого сайта, так и для копии для разработчиков. но я просто не могу понять, что я делаю неправильно. Я действительно был бы признателен за любую помощь.