brew services avvia php70 con un dominio unix socket - senza sudo?

0

Ho installato php70 di homebrew e mi connetto con successo ad apache tramite un socket di dominio unix.

Ho dovuto usare sudo per avviare php: sudo brew services start php70 .

Se non lo faccio, il socket viene creato con il mio nome utente normale, piuttosto che con il proprietario _www, essendo quest'ultimo indispensabile per consentire ad apache di accedere al socket.

Dovrei avviare php70 come root in questo modo, o c'è un modo più sicuro?

Ho provato a creare un gruppo con il mio nome utente e apache come membri di esso, con l'intento di creare il socket sotto quel gruppo, ma ho rinunciato a non essere completamente sicuro sulla traccia giusta.

Sto sprecando il mio tempo cercando di evitare l'uso di sudo? Forse la risposta è solo .. 'dipende' ..?

    
posta mwal 05.09.2017 - 13:08
fonte

1 risposta

2

Il comando (sudo) brew services start php70 (o meglio (sudo) brew services start homebrew/php/php70 ) copia uno speciale plist in una cartella distintiva e lo avvia e lo avvia come un launch agent o demone.

Senza il prefisso sudo è copiato nella cartella LaunchAgents di $ USER (~ / Library / LaunchAgents /) e avviato con $ USER rights.

Con il prefisso sudo , il plist viene copiato in / Library / LaunchDaemons e avviato con i diritti di root. Avvierà diversi processi (una radice principale php70-fpm e diversi processi child _www php-fpm).

Solo quest'ultimo può e può creare un file socket UNIX con il proprietario _www.

Questo è il comportamento previsto.

    
risposta data 06.09.2017 - 02:20
fonte

Leggi altre domande sui tag