Comment puis-je changer l'utilisateur NGINX?

J'ai un script PHP qui crée un répertoire et produit une image dans le répertoire. Cela fonctionnait très bien sous Apache, mais nous avons récemment décidé de passer à NGINX pour utiliser davantage notre RAM limitée. J'utilise la commande PHP mkdir () pour créer le répertoire:

mkdir(dirname($path['image']['server']), 0755, true); 

Après le passage à NGINX, je reçois l'avertissement suivant:

 Warning: mkdir(): Permission denied in ... 

J'ai déjà vérifié toutes les autorisations des répertoires parents, alors j'ai déterminé que je devais probablement changer l'utilisateur NGINX ou PHP-FPM, mais je ne sais pas trop comment faire (je n'ai jamais eu à préciser l'utilisateur Autorisations pour APACHE). Je ne peux pas trouver beaucoup d'informations à ce sujet. Toute aide est la bienvenue!

(Note: En plus de ce petit raccrochage, le passage à NGINX a été assez transparent, je l'utilise pour la première fois et il a littéralement seulement pris environ 10 minutes pour démarrer avec NGINX. Maintenant, je suis à repasser À l'écart.)

  • Mise à niveau de Nginx 1.6.3 à 1.8
  • Les requests ne sont jamais mises en attente après pm.max_children avec Nginx et PHP-FPM
  • Comment puis-je configurer nginx pour servir des hotes virtuels avec des rails (licorne / passager) et php-fpm
  • Les timeouts d'exécution des process PHP-FPM, mais NGINX ne ferme pas la session avec le client
  • PHP-FPM ne démarre pas automatiquement après le redémarrage
  • Trouver un goulot d'étranglement Nginx / PHP-FPM qui provoque des erreurs de passer 502 au hasard
  • CakePHP et Wordpress sur Nginx PHP-FPM
  • Nginx PHP-FPM Basic Auth
  • 3 Solutions collect form web for “Comment puis-je changer l'utilisateur NGINX?”

    Exécutez nginx & php-fpm sous www www

    1. Nginx

    Modifier nginx.conf et configurer l' utilisateur sur www www;

    Si le processus maître est exécuté en tant que root, nginx réglera () / setgid () vers USER / GROUP. Si GROUP n'est pas spécifié, nginx utilise le même nom que l'UTILISATEUR. Par défaut, il n'y a aucun utilisateur ni personne ou groupe nogroup ou le –user = USER et –group = GROUP à partir du script ./configure.

    2. PHP-FPM

    Éditez php-fpm.conf et configurez l'utilisateur et le groupe sur www .

    Utilisateur – utilisateur Unix des processus. Par défaut "www-data"

    Groupe – groupe de processus Unix. Par défaut "www-data"

    Dans Ubuntu 14.04, le fichier à modifier utilisateur et groupe dans PHP-FPM est: /etc/php5/fpm/pool.d/www.conf . Dans ce fichier, modifiez ces paramètres:

     user = www group = www listen.owner = www listen.group = www 

    Pour répondre à votre question réelle, il suffit de changer la ligne user dans nginx.conf :

     user [username]; 

    Exemple:

     user www-data; 

    L'utilisateur préféré pour Nginx à exécuter comme diffère réellement entre les systèmes d'exploitation. Parfois, Nginx est supposé fonctionner comme www-data . D'autres fois, il est censé courir comme nobody .

    Sur certains systèmes d'exploitation (tels que Windows), cela n'a même pas d'importance et la ligne user dans nginx.conf peut être commentée ou exclue.

    Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de réseau.