Raul21: Так эта конструкция работает? осталось добиться редиректа с некрасивого на красивый?
Попробуйте так:
RewriteRule ^([^/]*)/([^/]*)\.html$ /index.php?link=$1&action=shwprd&id=$2 [E=redir:yes,L]
RewriteCond %{ENV:REDIRECT_redir} !^yes$
RewriteRule ^index.php?link=(.*)&action=shwprd&id=(.*)$ $1/$2.htm [R=301,L]
но вот обратно же оно редиректило 😕 ... просто у меня cms выдает такие некрасивые адреса, да ещё и дубли делает (одной странице несколько разных адресов придумывает), вот и решила через mod_rewrite бороться с этим.
Это называется резиновая верстка.
Верстка производится ручками в редакторе.
спасибо. :)
Так эта конструкция работает? осталось добиться редиректа с некрасивого на красивый?
Попробуйте так:
RewriteRule ^([^/]*)/([^/]*)\.html$ /index.php?link=$1&action=shwprd&id=$2 [E=redir:yes,L]
RewriteCond %{ENV:REDIRECT_redir} !^yes$
RewriteRule ^index.php?link=(.*)&action=shwprd&id=(.*)$ $1/$2.htm [R=301,L]
всё равное не работает.
кста, а почему $1/$2.htm ?
Не понял :(
Без mod_rewrite ?
с mod_rewrite , конечно же :)
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)\.html$ /index.php?link=$1&action=shwprd&id=$2 [L]
так страница доступна по обоим адресам, и по красивому и по некрасивому.
а обратная подстановка, это как ? и опчему зацикливание может происходить ? 😕
понимаете, страница доступна по красивому адресу, но с некрасивого адреса она не редиректится на красивый....
а это правило RewriteRule ^(.*)/(.*)\.html$ index.php?link=$1&action=show&id=$2 [L] теряет часть контента ..
неа, не работает.
даже если обращаться http://localhost/xxx/1234.html - неверно отображается даже
аха=) правильно поняли =)) вот, как это сделать, подскажите ?)
это понятно, что МНООООГО написано.
чем, кстати, К=301 не угодил ?
вот думаю понятно объяснил или нет? :)
объяснил понятно =)
но вот обратно же оно редиректило 😕 ... просто у меня cms выдает такие некрасивые адреса, да ещё и дубли делает (одной странице несколько разных адресов придумывает), вот и решила через mod_rewrite бороться с этим.
угу. именно на старую и меняется.
убрала редирект.
но как сделать, чтобы страница по старому адресу редеректилась на новый ?