Не обрабатывается код статуса

xvost nginx-forum at nginx.us
Tue Mar 3 12:16:03 UTC 2015


upstream uwsgi_sock {
     server:{some_path};
}

server {
    listen 80;
    server_name ****.ru;

    access_log /home/www/var/log/nginx_access.log;
    error_log /home/www/var/log/nginx_error.log;

    location / {
        include uwsgi_params;
        uwsgi_pass uwsgi_sock;
        uwsgi_intercept_errors on;
    }

    location /static/ {
        add_header Cache-Control public;
        expires modified +60d;
        alias /home/www/static/;
    }

    location /media/ {
        add_header Cache-Control public;
        expires modified +60d;
        alias /home/www/media/;
    }

    location /article_view {
        include uwsgi_params;
        uwsgi_pass uwsgi_sock;
        uwsgi_intercept_errors on;
        if ($status = 404) {
            return 301 http://****.ru/articles/news/;
            }
    }
Задумывалось - если при входе по ссылке вида
http://****.ru/article_view?a_id=34558, бекэнд возвращает 404, должен
сработать редирект по 301 коду, если же бекэнд возвращает все что угодно но
не 404, то ничего не делаем (может ответить 200 и 301)
Но не работает, if не срабатывает

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,257024,257024#msg-257024



Подробная информация о списке рассылки nginx-ru