
title
Description
Body
У меня сменилась структура сайта и все ссылки надо переправлять на другой адрес с кодом 301 Moved Permanently
бывший адрес /view/id.html текущий /y/id.html
Добавлено спустя   2 минуты  23 секунды: 
Да и еще если не сложно дайте пример реврайта на с /y/ID.html на /yfile/view.php?id=ID
Неактивен
| 
 | 
 | 
если я правильно тебя понял
Неактивен
Выручай, опять изменилась структура сайта. А поисковики уже успели сожрать кучу линков.
Надо перекидать юзеров на адрес типо такого /y/(id).html сейчас все линки идут на /y/v?(id)
Вот мой конфиг:
| 
 | 
 | 
Пытался сделать что то вроде этого
| 
 | 
 | 
Вроде норм при переходе по адресу /y/(id).html
Но при переходе по адресу /y/v?(id) кидает на /y/v.html?(id)
Добавлено спустя   4 минуты  5 секунд: 
Да и еще одно как строго указать 11 вхождений? Пробовал {11} типа rewrite ^/y/v?([a-zA-Z0-9\-_]{11})$ /y/$1.html permanent; не проходит на валидность
Неактивен
| 
 | 
 | 
подозреваю, что перед ? должен быть обратный слеш.
| 
 | 
 | 
вместо last, вероятно, должно быть break.
Неактивен
Gemorroj написал:
Код:
1 
^/y/v?([a-zA-Z0-9\-_]+)$ подозреваю, что перед ? должен быть обратный слеш.
Да нет не обязательно. Как правило все линки идут так /y/v?123abc
А блин Ты имеешь в виду за экранирующий слэш? те за обратный. Тогда да думаю должен быть)
Gemorroj написал:
Код:
1 
^/y/([a-zA-Z0-9\-_]+)\.html.*?$ /youtube/videoView.php?$1 last; вместо last, вероятно, должно быть break.
Сейчас попробуем)
Добавлено спустя   1 минуту  18 секунд: 
Gemorroj А как на счет этого? 
TLENS написал:
Да и еще одно как строго указать 11 вхождений? Пробовал {11} типа rewrite ^/y/v?([a-zA-Z0-9\-_]{11})$ /y/$1.html permanent; не проходит на валидность
Неактивен
При экранировании знака вопроса вообще не срабатывает. 
        rewrite ^/y/v\?([a-zA-Z0-9\-_]+)$ /y/$1.html permanent;
В без экранирования бросает на /y/v.html?$1 такое ощущение что в реврайт попадает только патч а запрос после ? он не видит
Неактивен
хм странное явление. Сделал реврайт такого типа rewrite ^/y/v(.*?)$ /y/zzz.html?r=$request_uri&var=2 permanent; и при запросе /y/v?IKqV7DB8Iwg улетаю на /y/zzz.html?r=/y/v?IKqV7DB8Iwg&var=2&IKqV7DB8Iwg
Это дает понять что в конец все равно вставляется query_string
Добавлено спустя   2 минуты  36 секунд: 
А $1 у нас пустой rewrite ^/y/v(.*)$ /y/zzz.html?r=$1&var=2 permanent; кидает на /y/zzz.html?r=&var=2&9vQy0ip-SuIsds
Неактивен
Таки да реврайт не задевает query_string
rewrite ^(/y/v.*)$ /y/t.html?r=$1&var=2 permanent;
При запросе /y/v?IKqV7DB8Iwg34
Шлет нас на /y/t.html?r=/y/v&var=2&IKqV7DB8Iwg34
Неактивен
Обрыл уже гугл. Некоторые советуют знак вопроса вставлять в конец выходящей строки типо rewrite ^(/y/v.*)$ /y/t.html?r=$1&var=2? permanent; Это нужно для того что бы исключить автоподстановку того что после знака вопроса. Но вот мой вопрос с помощью этого решить не возможно.
Добавлено спустя    26 секунд: 
Здесь явно нужен другой подход
Неактивен