2011-12-16 2 views
1

Je me demande s'il est possible de forcer nginx à utiliser un utilisateur/groupe pour chaque domaine donné? Il semble que nginx est capable de fonctionner uniquement en tant qu'utilisateur donné pour tous les domaines - dans Apache, j'exécute chaque domaine en tant qu'utilisateur différent.Paramètres nginx - utilisateurs et droits

+0

Parlez-vous de servir des fichiers statiques ou des choses comme des scripts PHP? – Corbin

+0

Fichiers statiques et scripts PHP. –

Répondre

0

Pour les fichiers statiques, vous n'avez rien à faire concernant les droits d'utilisateur. L'utilisateur de nginx les servira. La même chose s'applique à Apache btw, il fonctionne normalement en tant qu'utilisateur "apache" dans le groupe "apache".

C'est en PHP que vous devez définir les détails de l'utilisateur et cela dépend de la façon dont vous exécutez PHP avec Nginx. Nginx n'exécute pas PHP directement comme Apache et transmet simplement les requêtes PHP à un autre processus séparé. Cela peut être Apache en tant que proxy ou FastCGI en utilisant FPM, etc. Quel que soit le processus qui exécute PHP, c'est là que les problèmes de l'utilisateur doivent être traités.

Si vous utilisez proxy comme Apache, vous définissez Apache comme vous l'indiquez et c'est cela. Si FastCGI utilise FPM, alors ce sera en PHP FPM. Chaque fichier de configuration de pool accepte "user" et "group". Pour que cela fonctionne pour plusieurs domaines, vous avez juste besoin de créer un pool de fpm par domaine et chacun écouterait sur un port différent.

Ainsi, le domaine 1 peut se trouver sur le port 9001, le domaine 2 ou 9002, etc. Chacun aura un utilisateur et un groupe distincts selon les besoins.