我有一些我已经可以访问的静态文件,并且我有一个API,已经在数字海洋中。
,但是我有一些配置nginx同时访问的troble。如果我的API有效,则静态文件不可能。和反面;
我的API在端口5000上运行,我想通过IP Adress访问网站和API。
请帮助!
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
server {
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
如果从同一IP地址和端口访问两个服务,则需要使用一个server
块。理想情况下,您将API移至独特的URI,例如:
location / {
try_files $uri $uri/ =404;
}
location /api/ {
proxy_pass ...;
...
}
如果您必须使用重叠的URI空间对静态文件和API使用,则可以使用try_files
检查是否存在静态文件:
location / {
try_files $uri $uri/ @proxy;
}
location @proxy {
proxy_pass ...;
...
}
请参阅此文档以获取更多信息。