foo.com/city/staticpage-cityname.html - ›foo.com/staticpage-cityname.html

Мое текущее решение - поместить все в корень сайта, хотя это дает желаемый результат: моя корневая папка переполнена (более 200 городов). Я хотел бы поместить все города в папку / root / cities / и переписать так, чтобы они выглядели так, как будто они находятся в корневой папке.

от www.foo.com/cities/citypage(.html) до www.foo.com/citypage(.html)


person maccen    schedule 07.05.2009    source источник


Ответы (1)


Вы можете использовать правило, которое проверяет, есть ли такой файл в папке cities:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}cities%{REQUEST_URI} -f
RewriteRule !^cities/ cities%{REQUEST_URI} [L]

RewriteCond %{THE_REQUEST} ^GET\ /cities/([^\s?]*)
RewriteRule ^cities/ /%1 [L,R=301]
person Gumbo    schedule 07.05.2009