0

У меня есть следующие правила для управления URL-адресами, которые перенаправляют не-www-трафик на www, а затем переписывают некоторые URL-адреса. Кажется, что он отлично работает, за исключением случаев, когда я перехожу к «http://example.com/prosite/» (без www, первого случая перенаправления - «^ $»). Я бы ожидал, что это приведет к домашней странице (это значит, что она должна перенаправляться на http://www.example.com/prosite/index.php?page=home), но вместо этого она перенаправляет меня на «http://www.example.com». Спасибо за вашу помощь.htaccess в подкаталоге переадресации в основной домен

RewriteEngine On 

RewriteBase "/prosite/" 

# redirect non-www addresses to www 
# redirect condition: hostname does NOT contain 2 or more dots 
RewriteCond "%{HTTP_HOST}" "!\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])\." 
RewriteRule "^(.*)$" "http://www.%{HTTP_HOST}/prosite/$1" [R=301,L] 

# redirect empty path to home page 
RewriteRule "^$" "index.php?page=home" [NC,L] 

# redirect page path to corresponding page 
RewriteRule "^(home)/?$" "index.php?page=$1" [NC,L] 

# redirect all other paths to index.php (without a "page" argument this will show the default page: 404 not found) 
RewriteRule "!^index\.php$" "index.php" [NC,L] 

ответ

0

По-видимому, это была проблема с кешем браузера. Я опустошил кеш, и он сработал.