Я столкнулся с проблемой, когда NGINX ведет себя по-разному со следующими командами запуска:
brew services start nginx
против
sudo nginx
Когда я запускаю nginx с sudo nginx
, вроде все нормально работает. Но когда я пытаюсь запустить nginx с brew service start nginx
, он запустился бы и работал нормально, если бы я загружал страницы, которые загружал перед использованием sudo nginx
, но ничего нового не загружалось. Я бы использовал sudo nginx
чтобы сначала загрузить эту страницу.
brew services list
показывает nginx как запущенный, но статус желтого цвета
Name Status User Plist
nginx started usera /Users/usera/Library/LaunchAgents/homebrew.mxcl.nginx.plist
php71 started usera /Users/usera/Library/LaunchAgents/homebrew.mxcl.php71.plist
Вот мой nginx.conf
файл
user usera admin;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8080;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
# Include Configuration
#include conf.d/*.conf;
# Include Enabled Sites
include sites-enabled/*;
include servers/*;
}
default
файл конфигурации службы
server {
listen 8080;
server_name default.localhost;
location / {
root html/default;
index index.html index.htm;
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
nginx
должен быть запущен как root, чтобы иметь доступ ко всем необходимым ресурсам. Его можно настроить для работы без полномочий root.
В качестве альтернативы его можно запустить с помощью sudo
на brew services
команда:
sudo brew services start nginx