Перенаправление .htaccess не скрывает URL - PullRequest
1 голос
/ 19 сентября 2010

мой .htaccess в корневой папке содержит следующие строки:

Options +FollowSymlinks
RewriteEngine on

RewriteRule ^(.*)\.htm$ http://example.com/?city=$1 [NC]

когда я открываю адрес http://example.com/bla.htm,, мой браузер не скрывает значения GET, указанные в .htaccess, он перенаправляет меня на? City = bla. Даже если я не использую переключатель [R]. Это всегда работало для меня раньше (насколько я помню, давно не занимался htaccess). Что здесь не так?

1 Ответ

3 голосов
/ 19 сентября 2010

Когда вы перенаправляете на весь URL-адрес, он не выполняет перезапись URL-адреса (вы не можете точно перезаписать URL-адреса на чужом веб-сайте).

При условии, что оба URL-адреса находятся на одном сервере, вам необходимосделать что-то вроде

RewriteRule ^(.*)\.htm$ index.php?city=$1 [NC]

Кроме того, я бы порекомендовал привыкнуть использовать переключатель [L] всякий раз, когда вы можете - это помогает избежать ошибок, когда у вас много URL для перезаписи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...