當前位置:首頁 » 網頁前端 » 前端本地反向代理報405
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

前端本地反向代理報405

發布時間: 2023-05-03 03:08:34

㈠ nginx錯誤碼405是什麼狀態

狀態碼405Method Not Allowed表明伺服器禁止了使用當前 HTTP 方法的巧睜請求。需要注意的是,GET與HEAD兩個方法不得神寬雹被禁止,當然也不得返回狀態碼 405。

解決:解決方法有三種
一. 重定向405錯誤碼到200:在nginx server{}裡面添加以下內容,root為站點的根目錄游帆

(1)前端本地反向代理報405擴展閱讀:

405 錯誤經常和 POST 方法同時出現。 您可能在您的網站上嘗試引入某種輸入表格,但並非所有的互聯網服務供應商 (ISPs) 都 允許處理該表格所需的 POST 方法。

所有 405 錯誤都可以追綜到 Web 伺服器設置和控制訪問網站內容的安全管理,因此您的 ISP 應該很容易地予以解釋。

㈡ nginx 報錯 connect() failed (111: Connection refused)

網站部署後客戶端訪問正常,access log中顯示請求為200,但error log中報錯扮敏 connect() failed (111: Connection refused)

nginx_error.log

Connection refused 報錯很大概率是CGI出錯察缺型,首先檢查上游server,發現服務正常可訪問,原因應該出在nginx上,經過搜索找到問題在ipv6上,報錯信息中 upstream: http://[::1]: 是一個IPv6地址
通過命令 ip addr 可以檢查伺服器是否有IPv6地址欄位 inet6 ,如果有那麼問題定位成功

解決思路有敗猜幾個,第一:禁用伺服器ipv6,但這種方式對機器修改較大,雲伺服器中ipv6可能被管控服務使用,修改風險較大,第二個是修改上游server支持IPv6,但前端已有nginx做反向代理,沒必要做此項修改,最後更恰當的方法是修改nginx中配置

nginx.conf配置中網站對應server模塊中的location,修改proxy_pass中的host,出錯時的配置是:

proxy_pass http://localhost:8080;

但為了強制指定IPv4的地址,需要變成:

proxy_pass http://127.0.0.1:8080;

修改後重啟nginx再次觀察nginx_error.log, 發現已經不再報錯,問題解決

㈢ postman或其他介面測試工具測試介面成功,前端請求介面無效401或405

postman或其他介面畝高測試工具測試介面成功

前端迅跡尺反向代理問州拍題

㈣ 嘗試用Nginx反向代理解決同時部署多個項目的問題

這個問題源於我想在伺服器上部署博客的前端項目,打算用Nginx來部署前端服務,但是我的443埠已經提供給了微信小程序的服務。

微信小程序要求正譽迅式環境的請求必須採用域名,並且是https服務,肯定是無法修改的,博客的前端項目雖然可以用80埠,但是瀏覽器會一直提示「不安全」,看起來也很不好。

我的CA證書已經被我放在了和小程序服務在一起的 /home 路徑下,找到 /etc/nginx/nginx.conf 文件,根據它的提示添加如下修改配置文件

這里我為了先驗證配置是否生效,已經停止了node服務,使用 nginx -s reload 重新載入配置文件,打開瀏覽器驗證,成功訪問到服務。

這時候啟動node服務,不出意外的因為443埠被佔用而出錯。

雖然公司的前端項目基本都使用反向代理,但是自己還是第一次嘗試,上網搜了一下辯清資料,竟然很簡單,不過要注意的是慶灶此 location 的配置是真的很繞。

我這里首先將node服務的埠更改為7001並重新啟動,用域名+埠訪問成功。繼續修改 /etc/nginx/nginx.conf 文件,在 原有的 location 下新增一條

使用 nginx -s reload 重新載入配置文件,打開瀏覽器輸入 域名/miniprogram 成功訪問到小程序服務,接下來只需要統一修改小程序的請求前綴為 /miniprogram 就可以了,而博客項目,仍然可以通過域名直接訪問。

在自己嘗試配置反向代理後發現了 location 之後加不加 / 以及代理地址後加不加 / 會造成最後轉發的結果天差地別,所以整理一下方便自己以後查閱。

假設:Nginx伺服器地址為 1.1.1.1 ,需要轉發到 2.2.2.2

發送請求: 1.1.1.1/foo/api

假設:Nginx伺服器地址為 1.1.1.1 ,需要轉發到 2.2.2.2

發送請求: 1.1.1.1/foo/api

這里的表格一開始真的也是看的我一頭霧水,但是看了別人的分析後覺得豁然開朗。

㈤ uniapp之h5反向代理設置踩坑,解決跨域問題

uniapp可以適應多個平台開發,你會發現在HBuilderX上的內置瀏覽器上調介面,沒問題;老讓跡在小程序中,也沒問題;連接手機聯調也沒問題;

當後台設置允許跨域之後,前端h5需要進行設置反向代理才能解決這個問題。

在manifest.json文件中,我們需要輸入我們的埠號

然後去視圖源碼下查看多了h5這個配置

我們需要在自動生成的h5配置中進行編寫代理設置

這里需要注意的是"target" : " http://xxx:9090 ", 這里是寫http還是https,需要與後侍並台保持一致,不然會報500.

然後我們去使滑哪用我們的代理,進行帶介面

㈥ apache配置反向代理的問題,求大神指點!

在IIS7之前,在windows上要實現該功能卻不是一件容易的事情,但是在IIS7上,通過Application Request Routing模塊,我們可以輕松實現反向代理
在配置web伺服器的時候,我們經常遇到這樣的問題,由於某些原因,該伺服器只能擁有一個公網IP,但是可能需要提供其他機器或者本機上其他 webserver的伺服器給訪問者,同時又不希望使用其他埠,如果在linux下,常見的解決方案是使用nginx作為前端server,通過反向代 理間接訪問其他webserver.在IIS7之前,在windows上要實現該功能卻不是一件容易的事情,但是在IIS7上,通過 Application Request Routing模塊,我們可以輕松實現反向代理.

本次測試配置的情況,簡單起見,只在 iis中測試,配置3個網站,第一個」LevenWeb」,使用80埠提供服務,第二個」levenblog」,下面運行著 levenblog2.0.9,使用8080埠,第三個」phpweb」,下面有一個」test.php」的phpinfo頁面(iis7 php配置本文不再詳述),本機ip:192.168.1.8,為了測試,我們先進行域名綁定,也就是在leven.com.cn下新增3個子域名,域名 綁定如下圖所示:

我們的目標如下:

http://phpweb.leven.com.cn/ 訪問phpweb站點,也就是http://localhost:8081/

http://levenblog.leven.com.cn/ 訪問levenblog站點,也就是http://localhost:8080/

http://realblog.leven.com.cn/ 訪問公網上的levenblog站點,也就是http://leven.com.cn/

http://localhost/leven 訪問levenblog站點,也就是http://leven.com.cn/

首先前往http://www.iis.net/extensions/ApplicationRequestRouting下載Application Request Routing,然後安裝,本次實踐使用的是V2版.

安裝完畢之後,新建3個站點:

然後找到ARR配置菜單:

開啟Proxy項:

然後在levenweb站點下配置反向代理路由,配置可以使用UI界面或者直接修改web.config的模式,本次配置給出ui和config文件兩種方式,個人更喜歡config配置文件模式.

進入該項,先配置第一項, http://phpweb.leven.com.cn/ 訪問phpweb站點,也就是http://localhost:8081/,選擇」Add Rules...」:

然後選擇」Blank Rule」

然後填寫如下:

圖片看不清楚?請點擊這里查看原圖(大圖)。

該參數設置表面ARR將攔截所有請求

繼續在」Conditions」中選擇」Add」:

該設置表面只有HTTP_HOST為phpweb.leven.com.cn的URL才能通過該規則,如果您綁定了多個域名,可以根據多次增加或者通過正則表達式的|來間隔

最後在下面的Action中配置代理路徑:

圖片看不清楚?請點擊這里查看原圖(大圖)。

在這兒,{R:1}代表了MatchUrl中的第一個匹配括弧

同樣配置的web.config文件如下:
復制代碼 代碼如下:

測試訪問http://phpweb.leven.com.cn/test.php,結果如下:

下面同樣可以配置levenblog.leven.com.cn和realblog.leven.com.cn

Ui界面配置不再說明,配置完成的web.config如下:
復制代碼 代碼如下:

訪問結果分別為:



我們再添加最後一項,將http://localhost/leven 代理到 http://leven.com.cn/
復制代碼 代碼如下:

但是此時訪問會出現問題,如下圖:

顯然,出現了css丟失等情況,通過查看源碼:

可以看到css的路徑有誤,不僅如此,所有的img,a標簽路徑全部出現了錯誤,代理之後的地址是/leven/xxx的,但是源地址仍然是/xxx,因此我們還需要增加一個Outbound Rule

配置好的config文件如下:
復制代碼 代碼如下:

然後刷新:

可見路徑正確.

在使用了反向代理之後,編程上也有些地方需要注意了,在取客戶端IP的時候,由於多了一層代理,直接是無法獲取的,因此,我們需要開啟

然後通過獲取Header中的X-Forworded-For欄位來取得客戶端IP

從測試來看,ARR是個非常有用的代理模塊,能完全滿足我們反向代理的需求,不僅如此,ARR還提供了UrlRewrite,ServerFarms,Cache等很多功能,很是值得我們挖掘.

來源: 博客園 作者:Leven

㈦ 405 Not Allowed nginx是怎麼回事

405不允許nginx,nginx為一高性能的HTTP 和反向代理 伺服器

㈧ 求解:405 Not Allowed -----nginx 我的網站做了反向代理後,出現這個問題!

Nginx不允許靜態文件響應POST請求的,否則會返回「HTTP/1.1 405 Method not allowed」錯誤。


1、不要使用post去請求靜態文件。


2、修改nginc.conf配置文件,改變「405錯誤」為「200 ok」,並配置location來解決

error_page銷團405=200@405;
location@405{
root/data/htdocs/;
}

因為你的描述過於簡單,只有虧隱一句話,我很難猜測,如未能虧空橘解決的話,補充詳細一點。

㈨ 反向代理 微信公眾號網頁 本地調試

標簽(空格分隔): 前端

微信公眾號調試需要域名在 微信管理後逗隱核台白名單中,因此對於本地調試特別不方便。為了在本地模擬出線上的環境,騙過微信的域名檢查,可以通過攜大 host + nginx 反向代理來實現本地調試。

修山掘改 host 文件,添加白名單域名的映射,訪問域名就是訪問本地了

nginx -t 得知本地配置文件位置,修改它

最後 nginx -s reload 或者 nginx

開發者工具默認開啟 HSTS,就是訪問過 https 的網站,是訪問不到 http 的,會自動轉為 https ,而且不能關掉。如果出現該問題可以刪掉開發者工具的用戶信息,並重啟開發者工具。

mac: $HOME/Library/Application\ Support/微信開發者工具
win: C:\Users\xxxxx\AppData\Local\微信開發者工具\User Data