Назад | Перейти на главную страницу

Regex для .. URL в URL?

В моем файле .htaccess есть следующая строка, но она продолжает перенаправлять меня на ошибку 404.

RewriteRule ^ path1 / ([a-zA-Z0-9 _-] +) / (. +) (/?) $ /File.php?variable1=$1&variable2=$2 [nc]

Пример ссылки будет ..

http://domain.com/path1/name23/http://domain2.com/stuff/is/here

Я хочу перевести этот второй URL-адрес в variable2.

RewriteRule ^ path1 / ([a-z0-9 _-] +) / ([^ \?] +) $ /File.php?variable1=$1&variable2=$2 [NC]

Попробуйте это правило и убедитесь. Ваш шаблон не совпадает, поэтому вы получаете ошибку 404. Кстати, я удаляю A-Z, потому что NC все равно сделает его нечувствительным к регистру.

Увеличьте уровень журнала до Debug и посмотрите, что делает mod_rewrite.

Я думаю, что только с [NC] apache ищет файл с именем 'file.php? Variable1 = $ 1 & variable2 = $ 2' (с замененной переменной) на жестком диске. Вы можете попробовать с помощью [R, NC] или [PT, NC] (для этого нужен mod_proxy)