Welcome! Log In Create A New Profile

Advanced

Re: [Bug] обрезается строка в alias

June 02, 2010 08:46AM
On Wed, Jun 02, 2010 at 04:13:37PM +0400, Anton Kuznetsov wrote:

> Похоже на баг.
>
> ubuntu 10.04
> nginx 0.7.65 (из пакетов)
>
> кеш картинок в файловой системе, пример
> /path/to/images/12/12345_240x240.png
> запросы, пример
> /images/12345?size=200x200
>
> ожидаемый результат - отдать нужную картинку
>
> действительный результат:
> /images/12345 - работает, отдается /path/to/images/12/12345_240x240.png
> /images/12345?size=240x240 - не работает, уходит на бекенд.
>
> в error логе видно, что удалены последние четыре символа из alias
> /path/to/images/12/12345_240x240
>
> если поставить в alias еще одну переменную, сохраненную из $arg_foo,
> удаляются 8 байт.
>
> кусок конфига:
>
> location ~ /image/(\d+)(\d\d\d) {
> types { }
> default_type image/png;
> set $size "240x240";
> if ($arg_size) {
> set $size "${arg_size}";
> }
> alias "/path/to/images/$1/$1$2_${size}.png";
> error_page 404 405 502 504 = @fallback;
> }

Это из-за if. Если число размеров предопределено, то можно так:

map $arg_size $size {
default 240x240;
200x200 200x200;
...
}

server {

location ~ /image/(\d+)(\d\d\d) {
types { }
default_type image/png;
alias "/path/to/images/$1/$1$2_${size}.png";
error_page 404 405 502 504 = @fallback;
}

--
Игорь Сысоев
http://sysoev.ru

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

[Bug] обрезается строка в alias

Anton Kuznetsov June 02, 2010 08:14AM

Re: [Bug] обрезается строка в alias

Maxim Dounin June 02, 2010 08:40AM

Re: [Bug] обрезается строка в alias

Igor Sysoev June 02, 2010 08:46AM

Re: [Bug] обрезается строка в alias

Anton Kuznetsov June 02, 2010 11:54AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 182
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready