Добрый день!
Столкнулся с такой проблемой, не работает динамическая capthca в nginx. Ранее сайт работал на apache+php перенесли на nginx + php-fpm.
Проблема в том что есть каптча, которая генерируется динамично с помощью контроллера php не отображается на сайте, в логах следующее:
2014/02/11 14:12:37 [error] 3029#0: *1 open() "/var/www/site.ru/captcha.jpg" failed (2: No such file or directory), client: 37.110.25.111, server: site.ru, request: "GET /captcha.jpg?1392145982456 HTTP/1.1", host: "www.site.ru", referrer: "http://www.site.ru/qna/"
Конфиг виртуального хоста:
location / {
index index.php;
#auth_basic "Members Only";
#auth_basic_user_file /etc/nginx/htpasswd;
rewrite ^/image /image.php last;
rewrite ^/web/(.*) /web/$1 last;
rewrite ^/receiver.html /receiver.html last;
rewrite ^/ /index.php last;
#rewrite ^/captcha.jpg /controller/common.php last;
#try_files $uri $uri/ /index.php;
}
#location /captcha.jpg {
#}
# Images and static content is treated different
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml|ttf|woff|eof|swf)$ {
access_log off;
expires 100d;
}
Если из статики убрать .jpg то все работает, но половина картинок не отображается. Пробовал как указано в комментариях кофига отдавать напрямую, тоже не работает. Кто сталкивался с подобным на nginx+php-fpm подскажите как решили.