在Ubuntu上,我试图使用nginx和uwsgi运行三个Web应用程序。我能够运行两个具有以下nginx配置的应用程序,但是不能成功运行第三个。请帮我怎么运行它。
首先是nginx配置:air-quality.conf
server {
listen 80;
real_ip_header X-Forwarded-For;
set_real_ip_from 127.0.0.1;
server_name localhost;
location / {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/air-quality/socket.sock;
uwsgi_modifier1 30;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html{
root /usr/share/nginx.html;
}
}
没有问题,上面的配置计算出来并显示210.123.33.247:80/airData
上的输出。
第二个nginx配置在items-rest.conf
中。它是:
server {
listen 81;
real_ip_header X-Forwarded-For;
set_real_ip_from 127.0.0.1;
server_name localhost;
location / {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/items-rest/socket.sock;
uwsgi_modifier1 30;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html{
root /usr/share/nginx.html;
}
}
它还显示了210.123.33.247:81/items
上的预期输出。
但第三个没有用。配置文件是:
server {
list en 8090;
real_ip_header X-Forwarded-For;
set_real_ip_from 127.0.0.1;
server_name localhost;
location {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/display_air/socket.sock;
uwsgi_modifier1 30;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html{
root /usr/share/nginx.html;
}
}
在尝试运行第三个应用程序时,我尝试了sudo systemctl reload nginx
和sudo systemctl restart nginx
。然后它产生了错误说
nginx:[emerg]" location"中的参数数量无效/etc/nginx/sites-enabled/display-air.conf:7中的指令
我做错了什么?有人请帮帮我。
答案 0 :(得分:0)
你在这里错过了一个斜杠
location {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/display_air/socket.sock;
uwsgi_modifier1 30;
}
应该是
location / {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/display_air/socket.sock;
uwsgi_modifier1 30;
}