Думаю, что в поддержке такая система потребует много времени. Я вот,
например, использую примерно такую конструкцию
<VirtualHost *:80>
ServerName staging.example.net
ServerAlias *.example.net
UseCanonicalName Off
VirtualDocumentRoot /vhosts/example.net/%1
DirectoryIndex index.php index.html
AssignUserFromPath "^/vhosts/example.net/([^/]+)" stg_$1 stg_$1
<Directory /vhosts/example.net>
Options -Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Все что нужно, это создать нового пользователя в системе.
# useradd -s /sbin/nologin -d /vhosts/example.net/project1 stg_project1
единственный минус - нет возможности одновременно запускать несколько
версий php, а часто бывает нужно.
2015-08-26 17:02 GMT+03:00 Anton Yuzhaninov <citrin@citrin.ru>:
> On 08/25/15 17:37, paperroot wrote:
>
>> Хочу написать патч, который будет отдавать контент предварительно
>> setuid'ившись в системного пользователя указанного в конфиге
>> virtual_host'a,
>> для того чтобы обезопасить большое кол-во независимых проектов от разных
>> пользователей, работающих на одном мощном сервере.
>>
>
> Лучше посмотреть в сторону POSIX ACL (setfacl) чтобы пользователю nginx
> можно было выдать права на чтение всех пользовательских файлов, при этом
> чтобы сами пользователи не могли читать файлы друг-друга.
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru