Konstantin Tokarev Wrote:
---
25.08.2015, 17:37, paperroot nginx-fo...@nginx.us:
Здравствуйте.
Хочу написать патч, который будет отдавать контент предварительно
setuid'ившись в системного пользователя указанного в конфиге
virtual_host'a,
для того чтобы обезопасить большое кол-во независимых проектов от
разных
пользователей, работающих на одном мощном сервере.
Сделал правку в файле src/http/modules/ngx_http_static_module.c в
функции
ngx_http_static_handler.
Суть правки: делается clone на участок кода:
setgit(vh_gid);
setuid(vh_uid);
ngx_open_cached_file(clcf-open_file_cache, path, of, r-pool);
данная правка работает, но имеются проблемы со сторонними модулями,
например
pagespeed.
Подскажите пожалуйста, где идеалогически правильнее делать такую
правку,
чтобы она дружила с другими модулями, или хотябы с модулем
pagespeed.
Мне кажется, что единственный идеологически верный путь - запускать по
отдельной
копии nginx для каждого виртуального хоста под соответствующим
пользователем, и
проксировать на них запросы с главного Nginx
Спасибо.
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,261237,261237#msg-261237
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
--
Regards,
Konstantin
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Да такой вариант тоже рассматривался, но он к сожалению довольно затратен по
вычислительным ресурсам и слишком сложный для управления и сопровождения.
Я лишь прошу подсказать точку входа для правки, т.к. чтение кода nginx и
дебагинг с gdb не дали мне ответа на этот вопрос. Гугление тоже ничего не
дало, нету описания архитектуры или схемы обработки сетевого подключения.
Поэтому и решил задать вопрос здесь.
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,261237,261255#msg-261255
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru