Я хочу переписать это так, чтобы текст в строке адрес должен бытьпереписывают MySite/город/citiname.html к MySite/citiname.html
mysite.com/citiname.html
Я хочу переписать это так, чтобы текст в строке адрес должен бытьпереписывают MySite/город/citiname.html к MySite/citiname.html
mysite.com/citiname.html
Во-первых, сделать Убедитесь, что в Apache включен mod_rewrite. Также убедитесь, что
AllowOverride All
включен в файле conf. Затем создайте файл .htaccess со следующим содержимым:
RewriteEngine On
RewriteRule ^city/([A-Za-z]+)\.html$ $1.html [L]
Первая часть RewriteRule является образцом. Если URL-адрес соответствует этому шаблону, это правило выполняется и перенаправляется во вторую часть. $ 1 представляет группу, сопоставляемую ([A-Za-z] +).
Так /city/Amsterdam.html переписывается /Amsterdam.html
(Кстати, я не имею возможность протестировать его атм, это то, что я запомнил из правил, которые я написал в прошлом)
Вам нужно перенаправить также, чтобы увидеть новый URL, поэтому модификатор должен быть [L, R = 301]. – Residuum
Я получаю Внутреннюю ошибку сервера, когда я пытаюсь использовать ваш код - supermac – 2009-07-21 15:29:23
Также вам нужно сбежать.: RewriteRule ^/city/([A-Za-z] +) \. Html $ /$1.html [L, R = 301] – Residuum