欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx 代理域名到另外一個(gè)域名的實(shí)現(xiàn)方法

 更新時(shí)間:2024年05月27日 11:18:37   作者:小果子^_^  
本文主要介紹了nginx 代理域名到另外一個(gè)域名的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

nginx 代理域名到另外一個(gè)域名

server {
		listen	80;
		server_name  原域名;
		location / {  
			#return 301 http://新域名$request_uri;  # 重定向到新域名  
			proxy_pass	http://新域名/;
			proxy_redirect	http://原域名/ http://新域名/;
		} 
	}
server {
        listen       80;
        server_name  新域名;
		
		# websocket代理
		#location /webSocket/chat {
		#	 proxy_pass  http://xxx.xxx.com/webSocket/chat;
        #    proxy_set_header Host $host;
        #     proxy_set_header Upgrade 'websocket';
        #     proxy_set_header Connection 'Upgrade';
		#	 proxy_connect_timeout 4s;
		#	 proxy_read_timeout 7200s; #兩個(gè)小時(shí)
		#	 proxy_send_timeout 12s;
		#}
		
        location / {		
			proxy_pass	http://localhost:8080;
            root   html;
            index  index.html index.htm;
			proxy_set_header   Host             $host;
			proxy_set_header   X-Real-IP        $remote_addr;						
			proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
		
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

注意:用return,可以重定向到新域名的頁(yè)面,但是請(qǐng)求方法是有問(wèn)題的

上述代碼跑了幾天后,不起作用了,又更新了其它代碼

server {
		listen	80;
		server_name  www.old.com;
		
		location / {  
			proxy_pass http://www.new.com;
			proxy_redirect off;
		} 
	}

上述代碼又修改了一下

server {
		listen	80;
		server_name  www.old.com;
	
		location / {  
			proxy_set_header Host www.new.com;
			return 307 http://www.new.com$request_uri;  # 重定向到新域名  
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			#proxy_redirect	http://www.new.com http://www.yyhkjt.com;
			#rewrite ^(.*)$ http://www.new.com$1 permanent;
			#rewrite ^(.+)$ $scheme://www.new.com$1 redirect;
			#return 301 $scheme://www.new.com$request_uri;
			#proxy_pass	http://www.new.com; 
		} 
	}

postman請(qǐng)求會(huì)將post請(qǐng)求發(fā)送兩次,并且第二次會(huì)轉(zhuǎn)為get請(qǐng)求301:客戶端在收到 301 響應(yīng)后,會(huì)自動(dòng)將 HTTP 請(qǐng)求轉(zhuǎn)為 GET 請(qǐng)求,同時(shí)將請(qǐng)求地址修改為重定向后的地址
307:對(duì)請(qǐng)求類型不做轉(zhuǎn)換

nginx代理轉(zhuǎn)發(fā)post請(qǐng)求變get請(qǐng)求方法

以下是常見的 Nginx HTTP 跳轉(zhuǎn) HTTPS 的方式及其對(duì)請(qǐng)求方法的影響:

301 Moved Permanently:該方式將所有的 HTTP 請(qǐng)求重定向到 HTTPS 上,并且該重定向是永久性的??蛻舳嗽谑盏?301 響應(yīng)后,會(huì)自動(dòng)將 HTTP 請(qǐng)求轉(zhuǎn)為 GET 請(qǐng)求,同時(shí)將請(qǐng)求地址修改為重定向后的地址。這意味著,如果原始請(qǐng)求是 POST 請(qǐng)求,那么 301 重定向會(huì)將其轉(zhuǎn)變?yōu)?GET 請(qǐng)求。此外,瀏覽器會(huì)緩存 301 響應(yīng),下一次請(qǐng)求時(shí)會(huì)直接跳轉(zhuǎn)到 HTTPS 上。

302 Found / 303 See Other:這兩種方式將所有的 HTTP 請(qǐng)求臨時(shí)性地重定向到 HTTPS 上。302 Found 的響應(yīng)會(huì)將請(qǐng)求方法保持不變,同時(shí)將請(qǐng)求地址修改為重定向后的地址。而 303 See Other 則會(huì)將所有請(qǐng)求方法轉(zhuǎn)變?yōu)?GET 方法,并將請(qǐng)求地址修改為重定向后的地址。這兩種方式都不會(huì)緩存響應(yīng),下一次請(qǐng)求時(shí)會(huì)再次發(fā)起請(qǐng)求。

307 Temporary Redirect:該方式將所有的 HTTP 請(qǐng)求臨時(shí)性地重定向到 HTTPS 上,并且會(huì)保留原始的請(qǐng)求方法。這意味著,如果原始請(qǐng)求是 POST 請(qǐng)求,那么重定向后的請(qǐng)求仍然是 POST 請(qǐng)求。同時(shí),請(qǐng)求地址也會(huì)被修改為重定向后的地址。與 302 Found 類似,307 Temporary Redirect 不會(huì)緩存響應(yīng),下一次請(qǐng)求時(shí)會(huì)再次發(fā)起請(qǐng)求。

308 Permanent Redirect:該方式將所有的 HTTP 請(qǐng)求重定向到 HTTPS 上,并且該重定向是永久性的??蛻舳嗽谑盏?308 響應(yīng)后,會(huì)自動(dòng)將 HTTP 請(qǐng)求轉(zhuǎn)為與原始請(qǐng)求方法相同的請(qǐng)求方法,同時(shí)將請(qǐng)求地址修改為重定向后的地址。與 301 Moved Permanently 不同的是,308 Permanent Redirect 不會(huì)允許瀏覽器將 POST 請(qǐng)求重定向到新地址。308 響應(yīng)也會(huì)被緩存,下一次請(qǐng)求時(shí)會(huì)直接跳轉(zhuǎn)到 HTTPS 上。

需要注意的是,不同的重定向方式可能會(huì)對(duì)請(qǐng)求方法、請(qǐng)求地址、緩存等方面產(chǎn)生不同的影響。因此,在選擇重定向方式時(shí),需要根據(jù)具體的需求進(jìn)行選擇。通常情況下,推薦使用 301 Moved Permanently 或 308 Permanent Redirect 將 HTTP 重定向到 HTTPS 上,并且需要注意 POST 請(qǐng)求的處理方式

解決方法

方法1

可以使用return 307進(jìn)行轉(zhuǎn)發(fā),return 307,對(duì)請(qǐng)求類型不做轉(zhuǎn)換,意思就是
get----->get
post----->post
所以通過(guò)原樣轉(zhuǎn)發(fā)可以解決我們post請(qǐng)求會(huì)被轉(zhuǎn)化為get請(qǐng)求問(wèn)題

具體配置方法

server {
    listen 80;
    server_name test.123.com;
	location /test/api {
	      return 307 http://192.168.1.133:8088/api;
	      proxy_set_header Host $host;
      }
 }

這樣的話 當(dāng)我們post test.123.com/test/api這個(gè)地址時(shí)請(qǐng)求就不會(huì)被轉(zhuǎn)化為get請(qǐng)求了

方法2使用 return 308方式跳轉(zhuǎn)

具體配置方法

server {
    listen 80;
    server_name example.com;
    return 308 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    server_name example.com;
    # HTTPS 相關(guān)配置
    ...
}

在k8s ingress中配置http強(qiáng)跳https

在ingress注解中加入以下注解
nginx.ingress.kubernetes.io/force-ssl-redirect true

擴(kuò)展

當(dāng)我們要根據(jù)請(qǐng)求類型來(lái)過(guò)濾按照請(qǐng)求類型轉(zhuǎn)發(fā)到指定的地址時(shí)可以用以下方式來(lái)實(shí)現(xiàn)

upstream test123 {
server 192.168.1.133:8888 max_fails=3 fail_timeout=30s;
server {
    listen 80;
    server_name test.123.com;
	location /api/bbb {
	      if ($request_method = POST) {
	         return 307 http://192.168.1.133:8088/aaa/bbb;
	      }  
	     proxy_pass http://test123;
	     proxy_set_header Host $host;
	     }
	 }
}

當(dāng)我們使用get請(qǐng)求http://test.123.com/api/bbb這個(gè)地址時(shí)請(qǐng)求不會(huì)被轉(zhuǎn)發(fā)
當(dāng)我們使用post請(qǐng)求http://test.123.com/api/bbb這個(gè)地址時(shí)請(qǐng)求會(huì)被轉(zhuǎn)發(fā)到http://192.168.1.133:8088/aaa/bbb這個(gè)地址

到此這篇關(guān)于nginx 代理域名到另外一個(gè)域名的實(shí)現(xiàn)方法的文章就介紹到這了,更多相關(guān)nginx 代理域名到另外域名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx中泛域名配置的實(shí)例教程

    Nginx中泛域名配置的實(shí)例教程

    泛域名就是我們平常指的二級(jí)和三級(jí)域名等,這里我們來(lái)總結(jié)一下Nginx中泛域名解析配置的實(shí)例教程,包括正則匹配等細(xì)節(jié)的講解,需要的朋友可以參考下
    2016-05-05
  • 解決httpd占用80端口導(dǎo)致Nginx啟動(dòng)失敗報(bào)錯(cuò)的解決辦法

    解決httpd占用80端口導(dǎo)致Nginx啟動(dòng)失敗報(bào)錯(cuò)的解決辦法

    今天在建自己小網(wǎng)站時(shí)啟動(dòng)Nginx時(shí),發(fā)現(xiàn)其報(bào)下列錯(cuò)誤,意思是因?yàn)?0端口被占用導(dǎo)致Nginx啟動(dòng)失敗,所以本文小編給大家介紹介紹如何解決解決httpd占用80端口導(dǎo)致Nginx啟動(dòng)不成功報(bào)nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    2023-11-11
  • nginx啟動(dòng)、配置及測(cè)試圖文詳解(全網(wǎng)最全)

    nginx啟動(dòng)、配置及測(cè)試圖文詳解(全網(wǎng)最全)

    nginx是一個(gè)輕量級(jí)的網(wǎng)頁(yè)服務(wù)器、方向代理服務(wù)器和電子郵件代理服務(wù)器,具有配置靈活、靜態(tài)資源高并發(fā)、系統(tǒng)資源占用少、擁有緩存服務(wù)等優(yōu)點(diǎn),這篇文章主要給大家介紹了關(guān)于nginx啟動(dòng)、配置及測(cè)試的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • keepalived+nginx實(shí)現(xiàn)雙服務(wù)器主備方案

    keepalived+nginx實(shí)現(xiàn)雙服務(wù)器主備方案

    本文主要介紹了使用keepalived和nginx實(shí)現(xiàn)雙服務(wù)器主備方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • Nginx實(shí)現(xiàn)流量控制的示例代碼

    Nginx實(shí)現(xiàn)流量控制的示例代碼

    本文主要介紹了Nginx實(shí)現(xiàn)流量控制的示例代碼,可以用來(lái)限制用戶在給定時(shí)間內(nèi)HTTP請(qǐng)求的數(shù)量,保護(hù)服務(wù)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Nginx中報(bào)錯(cuò):Permission denied與Connection refused的解決

    Nginx中報(bào)錯(cuò):Permission denied與Connection refused的解決

    這篇文章主要給大家介紹了在Nginx中報(bào)錯(cuò):13: Permission denied與111: Connection refused的解決方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-04-04
  • Nginx、Apache、Lighttpd禁止目錄執(zhí)行php配置示例

    Nginx、Apache、Lighttpd禁止目錄執(zhí)行php配置示例

    這篇文章主要介紹了Nginx、Apache、Lighttpd禁止目錄執(zhí)行php配置示例,本文給出了單個(gè)目錄、多個(gè)目錄的禁止執(zhí)行PHP的方法,需要的朋友可以參考下
    2014-09-09
  • Nginx配置指令location匹配符優(yōu)先級(jí)和安全問(wèn)題

    Nginx配置指令location匹配符優(yōu)先級(jí)和安全問(wèn)題

    使用nginx 很久了,它的性能高,穩(wěn)定性表現(xiàn)也很好,得到了很多人的認(rèn)可。特別是它的配置,有點(diǎn)像寫程序一樣,每行命令結(jié)尾一個(gè)";"號(hào),語(yǔ)句塊用"{}"括起來(lái)。 配制好,直接nginx -t 檢查配制情況,配制成功,直接運(yùn)行:service nginx reload .服務(wù)器沒有任何宕機(jī)情況下,實(shí)現(xiàn)平穩(wěn)修改配置
    2014-03-03
  • centos系統(tǒng)下LNMP環(huán)境一鍵安裝

    centos系統(tǒng)下LNMP環(huán)境一鍵安裝

    centos下的LNMP環(huán)境一鍵安裝實(shí)現(xiàn)方法,需要的朋友可以參考下。
    2010-06-06
  • Nginx默認(rèn)location?index設(shè)置網(wǎng)站的默認(rèn)首頁(yè)方法詳解

    Nginx默認(rèn)location?index設(shè)置網(wǎng)站的默認(rèn)首頁(yè)方法詳解

    我們都知道index后面可以跟多個(gè)設(shè)置,如果訪問(wèn)的時(shí)候沒有指定具體訪問(wèn)的資源,則會(huì)依次進(jìn)行查找,找到第一個(gè)為止,這篇文章主要給大家介紹了關(guān)于Nginx默認(rèn)location?index設(shè)置網(wǎng)站的默認(rèn)首頁(yè)的相關(guān)資料,需要的朋友可以參考下
    2023-12-12

最新評(píng)論