htaccess Перенаправить в тот же файл, но отобразить другой URL без необходимости изменения внутренних ссылок? - PullRequest
0 голосов
/ 24 января 2010

В настоящее время у меня есть ссылки на моем сайте в виде: - http://example.com/products.php?cat=X

Я хочу, чтобы после перехода к месту назначения ссылка отображала что-то вроде: - http://example.com/new.

Файл на моем сервере - это тот же файл, но только URL должен отображаться аккуратно, и мне не нужно менять какие-либо ссылки.

Я попробовал следующее, но нашел это полезным, только если я явно изменил внутренние ссылки: -

RewriteRule ^new$ products.php?cat=10

Ответы [ 2 ]

0 голосов
/ 24 января 2010

Проверьте исходный запрошенный URL в строке запроса :

RewriteCond %{THE_REQUEST} ^GET /products\.php\?([^&]*&+)*cat=X
RewriteRule ^products\.php$ /new? [L,R=301]

Но, вероятно, будет проще, если вы сделаете это с помощью PHP (см. $_SERVER['REQUEST_URI']).

0 голосов
/ 24 января 2010
RewriteCond %{QUERY_STRING} =cat=10
RewriteRule ^products.php$ new [R,L]

RewriteRule ^new$ products.php?cat=10 [L]
...