brew services inicia php70 con socket de dominio Unix, ¿sin sudo?

0

Tengo el php70 de homebrew instalado y conectado con éxito a Apache a través de un socket de dominio Unix.

Tuve que usar sudo para iniciar php aunque: sudo brew services start php70 .

Si no hago esto, el socket se crea con mi nombre de cuenta de usuario regular, en lugar de con el propietario _www, siendo este último esencial para permitir que apache acceda al socket.

¿Debo iniciar php70 como root de esta manera, 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 debajo de ese grupo, pero me di por vencido porque no estaba completamente seguro en el camino correcto.

¿Estoy perdiendo el tiempo tratando de evitar el uso de sudo? Tal vez la respuesta es simplemente ... 'depende' ..?

    
pregunta mwal 05.09.2017 - 13:08

1 respuesta

2

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 inicia y lo inicia como un agente de lanzamiento o demonio.

Sin el prefijo sudo , se copia en la carpeta de Agentes de inicio de $ USER (~ / Library / LaunchAgents /) y comienza con los derechos de $ USER.

Con el prefijo sudo , el plist se copia a / Library / LaunchDaemons y se inicia con los derechos de root. Lanzará varios procesos (una raíz principal, php70-fpm y varios procesos secundarios _www php-fpm).

Solo este último podrá y puede crear un archivo de socket UNIX con el propietario _www.

Este es el comportamiento esperado.

    
respondido por el klanomath 06.09.2017 - 02:20

Lea otras preguntas en las etiquetas