1.nginx配置中間文件需要設置代理轉發,因為node應用一般部署在其他端口上,nginx監聽80/443端口,然后代理轉發到node應用上。
location / { proxy_pass http://127.0.0.1:3000/; }
2.如果要把node應用部署在子目錄,相關路徑需要添加前綴,比如nextjs中可以設置 Base Path,這樣的話node項目文件直接放在一級目錄下即可,系統會自動在前面添加前綴,達到二級目錄的效果,其他的框架可能也有類似的功能。如果框架沒有設置目錄前綴的功能,也可以直接把node應用文件放在網站下面的二級文件夾中再運行。
3.如果需要url重寫(偽靜態),可以在nginx中進行配置,注意目標路徑是否正確。且頁面內各個鏈接跳轉時應使用重寫后的格式。
rewrite ^/article/index_(.*)$ /article/tag/$1 last;
4.如果使用的是nextjs框架,前端、接口都在一個項目中的話,注意接口url要加前綴(如果部署在子目錄中)。
nextjs框架自帶url重寫功能,不過感覺沒有nginx的好用,如果感覺興趣的話可以研究一下。