Re: Модификация URL в nginx
Валентин Бартенев
ne на vbart.ru
Вт Янв 24 15:01:49 UTC 2012
On Tuesday 24 January 2012 18:26:07 Alexander F. wrote:
> Приветствую.
> Есть веб-сервер с nginx, отдающий картинки с бэкенда, URL картинок выглядит
> как:
> http://www.server.ru/cache/a1234/100483674_1337085766.jpg
>
> Некоторые нехорошие почтовые сервисы при получении письма с такой ссылкой
> (в контексте html письма) ее модифицируют: ставят либо восклицательный
> знак, либо знак пробела "%20"; к примеру почтовый сервер libero.it приводят
> вышеуказанный URL к виду:
> http://www.server.ru/cache/a1234/100483!674_1337085766.jpg
> Соответственно, клиенты получают 404, что неприятно.
>
> Вопрос: возможно ли средствами nginx вырезать такие символы или их
> игнорировать, что бы клиенты не получали 404 ошибку.
> Если возможно реализовать сторонними модулями, буду рад любым наводкам.
Можно попробовать обойтись регулярным выражением.
location /cache/ {
rewrite ^/cache/([^\s!]*)[\s!]([^\s!]*)$ /cache/$1$2 last;
}
--
Валентин Бартенев
Подробная информация о списке рассылки nginx-ru