Welcome! Log In Create A New Profile

Advanced

Проблема с if (-x $request_filename)

TJ@dir.bg
November 02, 2009 07:18AM
Приветствую!


Кусок конфига (ссылка на доки
http://sysoev.ru/nginx/docs/http/ngx_http_rewrite_module.html):
...
location /chkimg/
{
root /var/projects/www/test;

log_format imgtestlog
'"$request" $status $body_bytes_sent '
'"$http_referer" "$chk_img"
"$request_filename"';

access_log /var/log/nginx/imgtest.log
imgtestlog;

if (-x $request_filename)
{
set $chk_img 1;
}

if ($chk_img)
{
return 403;
}
}
...

При запросе файла (картинки jpeg) с установленным аттрибутом исполнения
(chmod +x) - эффект нулевой, т.е. отдается содержимое файла. В логе -
правильный request_filename и пустая $chk_img. Соответственно ожидаемо
отдается файл без такого аттрибута.

Подобная ситуация, когда -x заменяю на !-x и запрашиваю файл с
аттрибутом +x и файл без такового - в обоих случаях ошибка 403.

Ради чистоты эксперимента заменил -x на -e - сразу же получаю 403 ошибку
и в логе $chk_img равна 1.

Проблема пришла из дебиана и nginx/0.6.32. Решил проверить на рабочей
тачке с гентой и nginx посвежее nginx/0.7.59, gentoo linux.

В чем траблы?

С уважением,
TJ
Subject Author Posted

Проблема с if (-x $request_filename)

TJ@dir.bg November 02, 2009 07:18AM

Re: Проблема с if (-x $request_filename)

Maxim Dounin November 02, 2009 08:16AM

Re: Проблема с if (-x $request_filename)

TJ@dir.bg November 03, 2009 06:56AM

Re: Проблема с if (-x $request_filename)

Igor Sysoev November 03, 2009 07:18AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 143
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