0 votos

brew services iniciar php70 con socket de dominio unix - sin sudo?

Tengo instalado el php70 de homebrew y me conecto con éxito a apache a través de un socket de dominio unix.

Sin embargo, tuve que usar sudo para iniciar php: sudo brew services start php70 .

Si no lo hago, el socket se crea con mi nombre de usuario habitual, en lugar de con el propietario _www, siendo este último imprescindible para que apache pueda acceder al socket.

¿Debería empezar php70 como Root así, o hay una forma más segura?

Intenté crear un grupo con mi propio nombre de usuario y apache como miembros del mismo, con la intención de crear el socket bajo ese grupo, pero desistí por no estar del todo seguro del camino correcto.

¿Estoy perdiendo el tiempo tratando de evitar el uso de sudo? Tal vez la respuesta sea simplemente "depende"

2voto

klanomath Puntos 19587

El comando (sudo) brew services start php70 (o mejor (sudo) brew services start homebrew/php/php70 ) copia un plist especial a una carpeta distintiva y lo lanza e inicia como un agente de lanzamiento o demonio.

Sin el sudo se copia en la carpeta LaunchAgents de $USER (~/Library/LaunchAgents/) y se inicia con los derechos de $USER.

Con la sudo prefijo, el plist se copia en /Library/LaunchDaemons y se inicia con derechos de Root. Lanzará varios procesos (un padre Root php70-fpm y varios procesos child _www php-fpm).

Sólo este último puede crear un archivo de socket UNIX con el propietario _www.

Este es el comportamiento esperado.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X