Дружественные URL htaccess

WC
На сайте с 26.07.2013
Offline
10
765

Как правильно указать правила в htaccess для следующих строк:

www.site.com/index.php?view=about

www.site.com/index.php?view=country&id=RU

www.site.com/index.php?view=city&id=Moscow

Пробую так, но не работает последняя ссылка не

Options +FollowSymLinks

RewriteEngine On

RewriteRule ^([a-zA-Z0-9]+)/$ index.php?view=$1 [L]

RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?view=country&id=$1 [L]

RewriteRule ^city/([a-zA-Z0-9]+)/?$ index.php?view=$city&id=$1 [L]

как нужно сделать, чтобы URL правильно отображались и могли в себя включать все возможные знаки: Заглавные, %20, - / итак далее

I
На сайте с 28.03.2011
Offline
37
#1

http://www.exlab.net/tools/sheets/regexp.html

вам надо вместо ([a-zA-Z0-9]+) использовать \w\s только в названии города можгут быть и цифры

Помогаю не только словом.. (/ru/forum/830720)
alexspb
На сайте с 14.11.2005
Offline
187
#2

WebCreativo, в последней ссылке лишний символ, похоже:

view=$city

Чтобы включались заглавные, надо указать [NC,L]

Пробел, как символ указать в наборе, если могут быть дефисы, то в начале набора символов

[-a-z0-9 ]+

siv1987
На сайте с 02.04.2009
Offline
427
#3

RewriteEngine On

RewriteRule ^([\w]+)/([\w]*)/?$ index.php?view=$1&id=$2 [L]

/about/

/country/RU/

/city/Moscow/

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий