搜尋
首頁運維Nginxnginx的設定怎麼轉送到其他網站

需求

有這樣一個需求:專案中跳到某個位址,但這個位址不想暴露給使用者。

因此我們想到要做一層代理,透過專案某個路徑直接用ngnix代理到這個位址。

查詢相關文件後,發現方案如下:

用return 302

location /myBaidu {
  return 302 http://baidu.com;
}
  • 這個方案會直接跳到baidu,並且會改變域名,相當於直接location.href = 'baidu.com' ,顯然不適合我們的需求。

  • 我們想要的效果是代理到百度,但瀏覽器的url框內還是/sparkMonitor,那就用proxy_pass

用proxy_pass

假設我們的網站網域為http://myorigin.com/

location /myBaidu {
  proxy_pass http://www.baidu.com/;
}

這樣設定後就可以由http://myorigin.com/myBaidu直接存取到百度頁面,如下圖

nginx的設定怎麼轉送到其他網站

關於proxy_pass使用的語法,與/有關

當路徑加上/:相對路徑,此時相當於代理到http:// www.baidu.com/

location /myBaidu {
  proxy_pass http://www.baidu.com/;
}

如果造訪http://myorigin.com/myBaidu/abc就相當於造訪http://www.baidu.com/abc

當路徑不加/:絕對路徑,,此時相當於代理到http://www.baidu.com/myBaidu

location /myBaidu {
  proxy_pass http://www.baidu.com;
}

如果訪問http://myorigin.com/myBaidu/abc就相當於訪問http: //www.baidu.com/myBaidu/abc

當路徑加上/xxx/

location /myBaidu {
  proxy_pass http://www.baidu.com/xxx/;
}
  • 如果造訪http://myorigin.com/myBaidu/abc就相當於訪問http://www.baidu.com/xxx/abc

當路徑加上/xxx

location /myBaidu {
  proxy_pass http://www.baidu.com/xxx;
}
  • #如果訪問http://myorigin.com/myBaidu/abc就相當於訪問http://www.baidu.com/xxxabc

其他問題

  • ##用proxy_pass的方案反向代理到百度頁面,沒有任何問題。

  • 但是我們專案中是要求跳到某個內網域名,而且此域名和http://myorigin.com/並沒有互通,因此配置代理時,需要配置成ip位址,然後代理成功跳轉

但此時開啟代理程式的頁面顯示沒有樣式,檢視控制台發現了報錯如下:

nginx的設定怎麼轉送到其他網站

點進去查看錯誤如下圖

nginx的設定怎麼轉送到其他網站

  • #由此,問題就很明顯了,代理程式的網站用了根目錄絕對路徑去找到/static下的jquery文件,因此會直接在我們專案的網域下找http://myorigin.com/static文件,這樣是怎麼也無法找到代理專案的/static文件,所以jquery找不到報錯,頁面樣式失效

  • 而且不只是/static文件,可能還有其他文件也找不到,還有可能路徑與路由衝突,引發問題

  • 因此,我們可以得出結論,前端專案的nginx的配置轉發到其他網站需要慎重,不是所有網站都可以走前端代理的,需要具體情況具體分析

以上是nginx的設定怎麼轉送到其他網站的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除
NGINX的主要特徵:性能,可伸縮性和安全性NGINX的主要特徵:性能,可伸縮性和安全性Apr 13, 2025 am 12:09 AM

NGINX通過其事件驅動架構和異步處理能力提升性能,通過模塊化設計和靈活配置增強可擴展性,並通過SSL/TLS加密和請求速率限制等措施提高安全性。

NGINX與Apache:網絡託管和流量管理NGINX與Apache:網絡託管和流量管理Apr 12, 2025 am 12:04 AM

NGINX适合高并发和低资源消耗场景,Apache适用于需要复杂配置和功能扩展的场景。1.NGINX以高性能处理大量并发连接著称。2.Apache以稳定性和丰富模块支持见长。选择时需根据具体需求决定。

NGINX:現代Web應用程序的多功能工具NGINX:現代Web應用程序的多功能工具Apr 11, 2025 am 12:03 AM

NGINXisessentialformodernwebapplicationsduetoitsrolesasareverseproxy,loadbalancer,andwebserver,offeringhighperformanceandscalability.1)Itactsasareverseproxy,enhancingsecurityandperformancebycachingandloadbalancing.2)NGINXsupportsvariousloadbalancingm

NGINX SSL/TLS配置:使用HTTPS確保您的網站NGINX SSL/TLS配置:使用HTTPS確保您的網站Apr 10, 2025 am 09:38 AM

通過Nginx配置SSL/TLS來確保網站安全,需要以下步驟:1.創建基本配置,指定SSL證書和私鑰;2.優化配置,啟用HTTP/2和OCSPStapling;3.調試常見錯誤,如證書路徑和加密套件問題;4.應用性能優化建議,如使用Let'sEncrypt和會話復用。

NGINX面試問題:ACE您的DevOps/System Admin面試NGINX面試問題:ACE您的DevOps/System Admin面試Apr 09, 2025 am 12:14 AM

Nginx是高性能的HTTP和反向代理服務器,擅長處理高並發連接。 1)基本配置:監聽端口並提供靜態文件服務。 2)高級配置:實現反向代理和負載均衡。 3)調試技巧:檢查錯誤日誌和測試配置文件。 4)性能優化:啟用Gzip壓縮和調整緩存策略。

NGINX緩存技術:改善網站性能NGINX緩存技術:改善網站性能Apr 08, 2025 am 12:18 AM

Nginx缓存可以通过以下步骤显著提升网站性能:1)定义缓存区和设置缓存路径;2)配置缓存有效期;3)根据不同内容设置不同的缓存策略;4)优化缓存存储和负载均衡;5)监控和调试缓存效果。通过这些方法,Nginx缓存能减少后端服务器压力,提升响应速度和用户体验。

帶Docker的NGINX:部署和縮放容器化應用程序帶Docker的NGINX:部署和縮放容器化應用程序Apr 07, 2025 am 12:08 AM

使用DockerCompose可以簡化Nginx的部署和管理,通過DockerSwarm或Kubernetes進行擴展是常見的做法。 1)使用DockerCompose定義和運行Nginx容器,2)通過DockerSwarm或Kubernetes實現集群管理和自動擴展。

高級NGINX配置:掌握服務器塊和反向代理高級NGINX配置:掌握服務器塊和反向代理Apr 06, 2025 am 12:05 AM

Nginx的高級配置可以通過服務器塊和反向代理實現:1.服務器塊允許在一個實例中運行多個網站,每個塊獨立配置。 2.反向代理將請求轉發到後端服務器,實現負載均衡和緩存加速。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具