1
我我kubernetes上GCE羣集上部署的角2的應用程序。我可以使用負載平衡器服務通過公開的IP訪問它,而不會有任何問題。 但是,我打算在路徑/assessment
上訪問它,因此設置了具有以下內容的nginx反向代理。
配置
$ cat nginx/frontend.conf
server {
listen 443;
ssl on;
ssl_certificate /etc/tls/cert.pem;
ssl_certificate_key /etc/tls/key.pem;
location /assessment/ {
proxy_pass http://participation-frontend.default.svc.cluster.local/;
}
// etc.
}
症狀
雖然HTML渲染,資源(CSS,JS)將不會被發現和404
將代替返回。任何想法爲什麼發生這種情況 我也注意到,如果我將位置設置爲/
而不是一切都完美。
日誌
正如你可以在日誌摘錄波紋管看到,一個文件的請求將直接在root下執行。在這種情況下:的/assessment/GET /inline.508911a34e3d7fcf458e.bundle.js
/inline.508911a34e3d7fcf458e.bundle.js
代替
「/etc/nginx/html/inline.508911a34e3d7fcf458e.bundle.js」 failed (2: No such file or directory), client: 10.132.0.4, server: , request: 「GET /inline.508911a34e3d7fcf458e.bundle.js HTTP/1.1", host: 「<nginx-public-IP>」, referrer: 「https://<nginx-public-IP>/assessment/「
[本答案](http://stackoverflow.com/questions/43057099/why-does -angular2-webpack-starter-work-with-localhost3000-but-not-with/43065258#43065258)可能有所幫助。 –
@RichardSmith我已經在使用路徑相關變量,例如'SRC = 「inline.21b67490345418068f8f.bundle.js」'。另外,它不是一個單一用途的服務器,因爲我想從我的nginx反向代理路由到幾個API和SPA。那意味着,我的場景真的沒有解決方案?! – Ronin
日誌不同意。該日誌條目似乎不是路徑相對的。 –