-
當前位置:首頁 > 創(chuàng)意學院 > 技術(shù) > 專題列表 > 正文
nginx轉(zhuǎn)發(fā)到內(nèi)網(wǎng)穿透地址(nginx轉(zhuǎn)發(fā)到內(nèi)網(wǎng)穿透地址會變嗎)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于nginx轉(zhuǎn)發(fā)到內(nèi)網(wǎng)穿透地址的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
ChatGPT國內(nèi)免費在線使用,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準,寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com
本文目錄:
一、給Frp穿透的內(nèi)網(wǎng)Web上https
2020年了,誰還沒有個https呢,不上SSL證書就out了
Nginx
第一方法是在服務(wù)器端使用Nginx。Nginx監(jiān)聽80和443端口,把來自域名的請求,通過Nginx的反向代理轉(zhuǎn)發(fā)給frps監(jiān)聽的端口(比如7000),再由frps在轉(zhuǎn)發(fā)給frpc處理http響應(yīng)。在Nginx里配置上https證書,由Nginx實現(xiàn)ssl的加密解密。Nginx配置https證書和反向代理都是常規(guī)操作,不再做多余的演示。覺得麻煩用寶塔。
frp的https配置
frp自身也可以配置上證書提供https服務(wù),服務(wù)器frps就安心的做轉(zhuǎn)發(fā)就好了。
服務(wù)器端frps配置
在服務(wù)器端想用Nginx反向代理frps,一直沒有測試成功。這里就讓frps獨占80和443端口。修改frps.ini,
[common]
bind_port = 7000
token=12310086N
vhost_http_port = 80
vhost_https_port = 443
frps執(zhí)行修改過的配置文件,注意防火墻或者寶塔放行對應(yīng)的端口。
./frps -c frps.ini
內(nèi)網(wǎng)http響應(yīng)
此時我的一個192.168.0.156的內(nèi)網(wǎng) 8000端口存在http的響應(yīng)頁面。
內(nèi)網(wǎng)frpc配置
frpc.ini配置根據(jù)自己情況修改,證書配置"plugin_crt_path"、"plugin_key_path"使用的是對應(yīng)域名的nginx的證書。"plugin_local_addr"就是內(nèi)網(wǎng)對應(yīng)的http響應(yīng)端口
[common]
server_addr = 服務(wù)器IP
bind_port = 7000
token=12310086N
[test_htts2http]
type = https
custom_domains = 域名
plugin = https2http
plugin_local_addr = 127.0.0.1:8000
# HTTPS 證書相關(guān)的配置
plugin_crt_path = ./ssl/server.crt
plugin_key_path = ./ssl/server.key
plugin_host_header_rewrite = 127.0.0.1
plugin_header_X-From-Where = frp
./frpc -c frpc.ini
frps端也多了一條連接信息
訪問
配置上的域名解析到服務(wù)器的ip上,訪問域名效果
二、nginx抓包顯示內(nèi)網(wǎng)地址
Nginx抓包無法抓取內(nèi)網(wǎng)地址,因為內(nèi)網(wǎng)地址是不能被外網(wǎng)訪問的,Nginx只能抓取外網(wǎng)可以訪問的地址。
三、Nginx配置location進行接口轉(zhuǎn)發(fā)
生產(chǎn)環(huán)境中,用戶首先訪問網(wǎng)站的域名,然后由Nginx監(jiān)聽 80 端口對請求進行轉(zhuǎn)發(fā)。
例如用戶發(fā)起以下請求查詢匯率數(shù)據(jù):
http://[WEB_DOMAIN]/api/v1/runtime/exchange
經(jīng)過Nginx處理后到達服務(wù)端的請求則是這樣的:
http://[host:port]/v1/runtime/exchange
這個請求再經(jīng)過微服務(wù)的網(wǎng)關(guān),找到 runtime 服務(wù),就會訪問路由為 /exchange 的接口。
了解了這個后,我們來處理需求。
跟coupons服務(wù)接口側(cè)商定,所有關(guān)于coupons服務(wù)的接口均采用 applcationCode 和 coupons 參數(shù)進行路由映射.
舉個例子:該服務(wù)部署在192.168.31.2下的8085端口,提供了一個查詢接口,那么應(yīng)該是這種規(guī)則:
http://192.168.31.2:8085/runtime/coupons/data
此時,前端依然保持系統(tǒng)原有風格進行api調(diào)用:
http://www.baidu.com/api/v1/runtime/coupons/data
那么如何實現(xiàn)訪問 http://www.baidu.com/api/v1/runtime/coupons/data 跳轉(zhuǎn)到 http://192.168.31.2:8085/runtime/coupons/data 呢?
這樣,就可以使用nginx對coupons服務(wù)接口進行轉(zhuǎn)發(fā)了
四、nginx轉(zhuǎn)發(fā)不同的域名給不同IP
如果想把不同的域名分配給不同的服務(wù)器,最好的方式是在server域中進行配置??梢酝ㄟ^server_name指令去區(qū)分請求時屬于那個域的。配置方式為:
#...#...
server {
listen 8000 default_server;
server_name img10.ff.com img10.*;
#其它的配置項.
#...
#把該server中的所有請求都轉(zhuǎn)給img10.ff.com這個upstream.
location / {
proxy_pass http://img10.ff.com;
break;
}
}
server {
listen 8000;
server_name img11.ff.com img11.*;
#其它的配置項.
#...
#把該server中的所有請求都轉(zhuǎn)給img11.ff.com這個upstream.
location / {
proxy_pass http://img11.ff.com;
break;
}
}
#其它配置選項。
注意,此處所有的訪問都是訪問的反向代理的機器,客戶端拿到的ip也是反向代理的ip,只是反向代理會根據(jù)server_name把請求轉(zhuǎn)發(fā)給后端的機器去處理。因此,注意ping命令的返回結(jié)果都是反向代理的ip。
以上就是關(guān)于nginx轉(zhuǎn)發(fā)到內(nèi)網(wǎng)穿透地址相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
美國bing網(wǎng)站(美國網(wǎng)站nordstrom)
餐飲企業(yè)營銷策略都有哪些?餐飲行業(yè)營銷技巧分享