因為一個域名下有兩個專案,所以就通過http://www.aaaa.com/testa/和http://www.aaaa.com/testb/來區分,如果域名直接指向/testa/或者testb都是可以正常訪問的。把他們的nginx的埠改成了8081和8082,直接用ip加上埠號也是可以訪問的,但是用了nginx反向代理后就白屏,配置如下:

看日志是沒有輸出錯誤的,但是白屏,瀏覽器沒有加載css里面的圖片和其他的。

如果是正常瀏覽的話,會加載完index.html這些css和js之后,繼續加載css里面定義的圖片。
專案的目錄都是只有index.html和static目錄。
uj5u.com熱心網友回復:
圖片回傳的是一個地址吧,uj5u.com熱心網友回復:
圖片是開發寫在css里面的,都是../../static/img/這樣的地址
uj5u.com熱心網友回復:
直接在html里面寫圖片路徑,如何是靜態的直接寫就行,動態的要寫在img src=https://bbs.csdn.net/topics/‘”,uj5u.com熱心網友回復:
https://blog.csdn.net/m0_37852904/article/details/87780361,不知道是不是這個帖子上的問題uj5u.com熱心網友回復:
如果沒猜錯的話,css里面的圖片使用了絕對地址就是類似 /images/a.jpg
而不是相對地址 ../images/a.jpg
uj5u.com熱心網友回復:
用的都是 url(../../static/img/a.png) 這種
uj5u.com熱心網友回復:
https://blog.csdn.net/m0_37852904/article/details/87780361,不知道是不是這個帖子上的問題
uj5u.com熱心網友回復:
所以目前機子的狀態是http://127.0.0.1:8081 是正常的
http://127.0.0.1:8081/testa 是例外的
http://www.aaaa.com/testa/ 是例外的
而且例外的重點是白屏,連基本的HTML都沒顯示,而不單單是圖片沒顯示?
uj5u.com熱心網友回復:
是的,白屏。什么都沒顯示,我在日志里面也沒有看到錯誤
uj5u.com熱心網友回復:
你這個相當于是二級目錄去訪問應用程式!采用這種方式需要以下前提:1.Location 配置的時候后面一定要加上/;
2.應用程式本身也是搭建成二級目錄的形式;
3.靜態資源一定要用相對地址,采用絕對地址就會訪問例外,一些樣式和圖片顯示不出來!
案例:
location /abu/ {
proxy_pass http://abu_server/abu/;
}
location /h1/ {
proxy_pass http://10.18.5.135:9288/h1/;
}一定要記得最后加個/

IIS部署網站的時候,也是按照相當于二級目錄的方式進行!
uj5u.com熱心網友回復:
所以轉發給代理時,不能帶有testa 或 testb。應如下配置。server {
listen 80;
server_name www.aaa.com;
location ~ / {
expires -1;
proxy_read_timeout 600s;
proxy_next_upstream_tries 1;
client_max_body_size 100m;
if ($request_uri ~ "/testa/([^?]*)") {
set $path $1;
rewrite . /$path;
proxy_pass http://127.0.0.1:8081;
break;
}
if ($request_uri ~ "/testb/([^?]*)") {
set $path $1;
rewrite . /$path;
proxy_pass http://127.0.0.1:8082;
break;
}
charset utf-8;
proxy_pass http://127.0.0.1:8083;
}
}
uj5u.com熱心網友回復:
這個配置了訪問還是白屏,ip加上埠訪問是好的。有沒有可能是他程式的問題
uj5u.com熱心網友回復:
所有瀏覽器都白屏還是某些打開控制臺看看有沒有報錯
uj5u.com熱心網友回復:
所有的瀏覽器都是白屏,控制臺沒有報錯,nginx也沒有報錯
uj5u.com熱心網友回復:
你的意思是沒有加載圖片的請求 還是加載了 但是回傳為空?uj5u.com熱心網友回復:
沒有加載圖片的請求
uj5u.com熱心網友回復:
沒有加載圖片的請求 圖片是CSS的 就查回傳的CSS內容是否正確圖片是HTML發出的就查HTML的內容是否正確
uj5u.com熱心網友回復:
vue-router配置base:‘二級目錄名稱’轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/25379.html
標籤:JavaScript
上一篇:第一章:什么是前端開發者
下一篇:頁面靜態化實作
