Вопрос по regex, .htaccess, apache – простой .htaccess редирект: как перенаправить с параметрами?

4

Моя цель просто перенаправить:

/jsn.php?parameters вhttp://www.site2.com/jsn.php?parameters

Я пробовал с

Redirect permanent /jsn.php(.)* http://www.site2.com/jsn.php$1

Ваш Ответ

3   ответа
0

Включить mod_rewrite и .htaccess черезhttpd.conf а затем вставьте этот код в свой.htaccess подDOCUMENT_ROOT каталог:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(jsn\.php)$ http://www.site2.com/$1 [L,NC,R=301]
11

Параметры строки запроса автоматически передаются, вы просто хотите сделать это:

Redirect permanent /jsn.php http://www.site2.com/jsn.php

(.)* не работает сRedirect директива, вы, вероятно, думали оRedirectMatchно в любом случае вам это не нужно. А также(.)* должно быть(.*)в противном случае$1 обратная ссылка получит только первый символ.

0

Вы можете использовать явную перезапись URL в вашем файле .htaccess:

RewriteRule ^/jsn\.php\?(.*) http://www.site2.com/jsn.php?$1 [R]

Note: Вам нужно сбежать. а также ? потому что они также являются символами регулярного выражения.

Если у вас есть проблемы с использованиемmod_rewrite, разместите содержимое вашего файла.

Похожие вопросы