解決Nginx轉(zhuǎn)發(fā)圖片不能顯示的問題
背景:最近很多小伙伴使用Nginx代理iServer,將HTTP協(xié)議成HTTPS協(xié)議,但是可能會(huì)出現(xiàn)以下幾種情況:(1) 圖片、js、css等靜態(tài)資源無法加載

(2)代理后頁(yè)面跳轉(zhuǎn)回HTTP協(xié)議

(3)代理后訪問服務(wù)管理界面提示“該用戶無查詢服務(wù)訪問統(tǒng)計(jì)信息權(quán)限”

針對(duì)上述情況應(yīng)該如何解決問題呢?其實(shí)這些問題都是因?yàn)榇砗髞G失https協(xié)議,導(dǎo)致請(qǐng)求變成http,下面我將詳細(xì)講解如何避免這個(gè)問題。本文采用的OpenSSL去生成公鑰和私鑰。生成密鑰的方式可以參考博客(Nginx代理iServer的HTTP協(xié)議成HTTPS)介紹得比較詳細(xì),在此就不做多余的說明了。首先我們需要引入一個(gè)Nginx知識(shí):sub_filter模塊為Nginx官方自帶的模塊,功能為替換掉返回給客戶端數(shù)據(jù)的指定內(nèi)容。需要使用該功能時(shí)只需要在編譯時(shí)添加對(duì)該模塊的支持,便會(huì)編譯到Nginx的內(nèi)核。本需介紹的方式就是利用sub_filter將HTTP替換成HTTPS。sub_filter語(yǔ)法包括:sub_filter_types:*; 需要替換的類型,如text/htnl text/plain application/ javascript等,以空格分隔,默認(rèn)只查找文本型文件;sub_filter_once: on/off; 是否只替換一次,on是開啟此功能,off是關(guān)閉——默認(rèn)值是on;sub_filter: xxx1 xxx2; 前面的參數(shù)為原始內(nèi)容,后面的參數(shù)為替換后的內(nèi)容。Nginx配置說明:
# https配置
server {
listen 8000 ssl;
server_name ip;
ssl_certificate nginxRSAcert.pem;
ssl_certificate_key nginxRSAcert.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://ip:8090;
proxy_set_body $request_body;
proxy_set_header Accept-Encoding "";
proxy_set_header Host $host:8000;
sub_filter_once off;
sub_filter_types *;
sub_filter 'http://ip:8000/iserver' 'https://ip:8000/iserver';
}
}結(jié)果驗(yàn)證:(1)圖片、js、css靜態(tài)資源正常加載

(2)代理后頁(yè)面跳轉(zhuǎn)回均為HTTPS協(xié)議

(3)代理后訪問服務(wù)管理界面正常

本文轉(zhuǎn)自
解決Nginx代理iServer的HTTP協(xié)議成HTTPS后頁(yè)面出現(xiàn)跳轉(zhuǎn)回HTTP協(xié)議的情況_nginx代理總是跳轉(zhuǎn)登錄頁(yè)面
https://blog.csdn.net/supermapsupport/article/details/127074609
到此這篇關(guān)于解決Nginx轉(zhuǎn)發(fā)圖片不能顯示的文章就介紹到這了,更多相關(guān)Nginx轉(zhuǎn)發(fā)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Nginx的配置函數(shù)對(duì)于請(qǐng)求體的讀取
這篇文章主要介紹了Nginx的配置函數(shù)對(duì)于請(qǐng)求體的讀取,深入Nginx的內(nèi)核配置中進(jìn)行講解,需要的朋友可以參考下2015-12-12
Nginx/Openresty中啟用http2支持的方法教程
Openresty/Nginx默認(rèn)是不支持http2的,需要將http2模塊編譯進(jìn)應(yīng)用中。這篇文章主要給大家介紹了關(guān)于在Nginx/Openresty中啟用http2支持的方法教程,文中介紹的非常詳細(xì),對(duì)大家具有一的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-07-07
Nginx配合Apache或Tomcat的動(dòng)靜分離基本配置實(shí)例
這篇文章主要介紹了Nginx配合Apache或Tomcat的動(dòng)靜分離基本配置實(shí)例,實(shí)際上Nginx專門負(fù)責(zé)靜態(tài)和反向代理是主流服務(wù)器配置方案,需要的朋友可以參考下2016-01-01
在Nginx服務(wù)器上安裝SSL證書完成HTTPS請(qǐng)求的步驟詳解(springboot項(xiàng)目)
這篇文章主要介紹了在Nginx服務(wù)器上安裝SSL證書完成HTTPS請(qǐng)求(springboot項(xiàng)目),首先需要下載證書到本地接著在Nginx獨(dú)立服務(wù)器上安裝證書,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-04-04

