![](/img/trans.png)
[英]Kubernetes nginx-ingress how to deal with routing in Express
[英]Express and Nginx figthing over routing
所以我需要一個奇怪的配置,直到我在今年晚些時候重構一個項目。
它是一個靜態的 index.html 登陸頁面,由 NGINX 提供一個位置根“/”。
我有一個像這樣的斜線位置:
location /channel/ {
proxy_pass http://node_server:5000/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Ssl on;
proxy_cache_bypass $http_upgrade;
}
然后 express.js 處理。 Express 只是提供一個靜態文件夾,其中包含自動生成的內容,然后用戶可以在其中導航。
它在任何附加斜杠的意義上都很有效:
/頻道/打開/
但前提是我在“打開”后有一個斜杠。 如果我忽略它,那么 NGINX 將拋出“404 Not Found”,如果我保留它,它會按預期工作。
問題是用戶應該能夠單擊靜態服務目錄中的文件夾來遍歷文件結構,而在瀏覽器中的工作方式是單擊時不會在目錄名稱后附加斜杠,因此NGINX 然后拋出“404”。我嘗試了一個名為“express-slash”的 NPM 包,但這並沒有解決問題。
我希望這里有人對我接下來可以嘗試的內容提出一些建議?
可以在此處找到有關尾隨斜杠行為的詳細信息: https : //serverfault.com/questions/607615/using-trailing-slashes-in-nginx-configuration
但是如果你的目標是配置 NGINX 以允許目錄遍歷,你可能正在尋找autoindex
指令: http : //nginx.org/en/docs/http/ngx_http_autoindex_module.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.