
本来的单机配置是这样的,访问正常:
http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name my-domain.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; client_max_body_size 200M; location / { proxy_pass http://127.0.0.1:8000; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; } location /static/ { root /usr/local/nginx/project/; } } } 为了增加负载均衡,然后我把上面的单机配置改成:upstream backend {...},测一下就提示错误 nginx: [emerg] unknown directive "127.0.0.1:8000"
http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; upstream backend { 127.0.0.1:8000; } server { listen 80; server_name my-domain.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; client_max_body_size 200M; location / { proxy_pass http://backend; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $server_name; } location /static/ { root /usr/local/nginx/project/; } } } 服务器结构是 nginx + gunicorn + flask
1 akira 2018-06-06 14:23:22 +08:00 |
2 Zzdex 2018-06-06 14:25:04 +08:00 via iPhone server 127.0.0.1 试试 |
3 d0m2o08 2018-06-06 14:28:57 +08:00 强迫症受不了不用 include vhost/*.conf; 另外楼上说的对 upstream 地址需要用 server 开头 |
5 kslr 2018-06-06 14:38:11 +08:00 via Android 如果只有一个配置用什么 include |
6 miniyao OP @akira @Zzdex server 关键字是漏打了 @d0m2o08 @LeungJZ @kslr include /usr/local/nginx/conf/*.conf; 加不加没区别呀,我手动执行了一下: /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 没有用,又报 nginx: [emerg] "worker_processes" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:3 把 worker_processes 1; 改成 worker_processes auto; 还是同样的错误 比较奇怪。单机跑的配置很正常,调整了一个 upstream 然后,各种不通 |
7 kslr 2018-06-06 15:02:37 +08:00 你是不是把 worker_processes 加到 http 里面了 |