Ubuntu php5-fpm socket Unix

23

J'ai Ubuntu 11.10 et installé php5-fpm et je veux configurer nginx. Je veux utiliser des sockets unix au lieu de sockets tcp mais je n'ai pas trouvé le

 /var/run/php5-fpm.sock

J'ai regardé aussi

/tmp/php5-fpm.sock

Où se trouve le fichier php5-fpm.sock? J'ai aussi essayé

locate php5-fpm.sock

mais je n'ai rien trouvé. Remarque: php5-fpm fonctionne. J'ai commencé en tant que service http://blog.bigdinosaur.org/wordpress-on-nginx/ http://blog.nas-admin.org/?p=25

Gok Demir
la source

Réponses:

33

Dans la configuration par défaut avant 12.10 Quantal, PHP FPM est configuré pour écouter sur le port TCP 9000 à l'adresse 127.0.0.1. Cela peut être changé en /etc/php5/fpm/pool.d/www.conf.

Recherchez la ligne:

listen = 127.0.0.1:9000

et changez-le en quelque chose comme:

listen = /var/run/php5-fpm.sock

Après cela, redémarrez PHP FPM:

sudo /etc/init.d/php5-fpm restart

(note: reload. est cassé sur Onirique car il envoie un signal HUP à php5-FPM ce qui est faux Il est fixé précis en envoyant USR2, bugreport ).

Remarque: comme mentionné par @SpamapS (palingdrome: D), les versions plus récentes utilisent des sockets Unix par défaut, pas le socket tcp. Voir ce commentaire du Launchpad , il a été changé en 12.10 Quantal.

Lekensteyn
la source
Juste une note, sur précis, php5-fpm fonctionne en fait sur un socket par défaut. ;)
SpamapS
5
@SpamapS Je ne pense pas, le journal des modifications ne mentionne rien. Juste pour être sûr, j'ai vérifié le paquet php5-fpm .deb pour la version 5.3.10-1ubuntu3 et il contient toujours listen = 127.0.0.1:9000. Peut-être avez-vous déjà changé cela et mis à niveau tout en conservant les conffiles?
Lekensteyn
1
Eh bien non, j'ai soumis le changement à Debian, et ils l'ont fusionné, mais seulement aux paquets PHP 5.4. En fait, j'ai par erreur défini le statut du bogue sur pad.lv/900620 , donc merci pour la tête, réglez-le sur Triaged. Nous le reprendrons lors de la prochaine fusion de Debian.
SpamapS
En 14.04, il semble utiliser un socket UNIX par défaut, donc les choses doivent avoir changé.
jameshfisher
1

Malheureusement, cette méthode est ancienne et ne fonctionnera plus. VIEUX

sudo /etc/init.d/php5-fpm restart

Maintenant, vous devez utiliser un jour

sudo service php5-fpm restart

Au lieu de redémarrer, vous pouvez également utiliser; démarrer, arrêter et recharger.

Cas
la source