如何在NGINX中路由静态文件和不同的应用程序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在NGINX中路由静态文件和不同的应用程序?相关的知识,希望对你有一定的参考价值。
我想在我的nginx服务器上为我的“/”路由提供静态文件,并为所有其他路由提供来自NextJS服务器/上游的文件。
如果我关闭NextJS服务器(目前在开发模式下运行),我可以在“/”上看到我的静态页面,但当我回去再次打开服务器时,NextJS服务器再次处理所有事情。 。
我是Nginx的新手,所以任何帮助都将不胜感激!
upstream nextjs_node {
ip_hash;
server remora_nextjs_1:3000;
}
...
location = / {
proxy_set_header Access-Control-Allow-Origin *;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
...
location / {
proxy_set_header Access-Control-Allow-Origin *;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://nextjs_node;
}
我们的想法是仅为初始路由提供静态文件,并为所有其他文件运行节点应用程序(NextJS)
答案
server {
listen 80;
server_name test.example;
# Logs
error_log /var/www/html/example/logs/nginx-error.log;
access_log /var/www/html/example/logs/nginx-access.log;
root [path to your folder];
index index.html;
location / {
try_files $uri $uri /index.html;
}
}
以上是关于如何在NGINX中路由静态文件和不同的应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何设置NGINX以根据位置(在相同的server_name下)部署不同的单页应用程序(SPA的...即静态文件)和子路由