Я установил Nginx с помощью homebrew и после завершения установки появилось следующее сообщение:
In the interest of allowing you to run `nginx` without `sudo`, the default
port is set to localhost:8080.
If you want to host pages on your local machine to the public, you should
change that to localhost:80, and run `sudo nginx`. You'll need to turn off
any other web servers running port 80, of course.
You can start nginx automatically on login running as your user with:
mkdir -p ~/Library/LaunchAgents
cp #{prefix}/org.nginx.nginx.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/org.nginx.nginx.plist
Though note that if running as your user, the launch agent will fail if you
try to use a port below 1024 (such as http's default of 80.)
Но я хочу , чтобы Nginx на порту 80 работал при входе в систему, и я не хочу открывать терминал и вводить его, sudo nginx
чтобы сделать это. Я хочу, чтобы он загружался из файла plist, как это делают Redis и PostgreSQL.
Я переместил plist /Library/LaunchAgents/
из эквивалентной папки пользователя и изменил ее владельца, также попытался установить user
директиву в nginx.conf
файле и все то же сообщение об ошибке в Console.app:
nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)
(наряду с другим сообщением о том, что поскольку nginx
он запускался без привилегий суперпользователя, user
директива игнорировалась)