Есть ли возможность получить функционал директивы internal не для статики, а для произвольных запросов?
Поясню: пользователь логинится через веб в самого себя же на линуксовой тачке. Ну и соответственно в браузере имеет интерфейс для выполнения каких-то задач на сервере со своими правами.
На стороне сервера все обслуживается Nginx + flup + FastCGI. Есть процесс который мапит веб-пользователя и линукс-пользователя и передает все обслуживание залогиненного юзера соответствующему FastCGI процессу запущенному от имени этого самого пользователя.
Пример запуска:
sudo -u $user python /absolute/path/to/manage.py runfcgi host=127.0.0.1 port=$port
Ну и для Nginx:
location /user/$user {
internal;
fastcgi_pass 127.0.0.1:$port;
# additional FastCGI configuration...
}
В Django views.py:
@login_required
def central_dispatch_view ( request ):
response = HttpResponse()
response['X-Accel-Redirect'] = '/user/'+request.user.username
return response