Nginx 代理服务,访问ftp图片,图片乱码

34 篇文章 0 订阅
20 篇文章 0 订阅
文章讲述了作者在项目中遇到图片资源从Nginx反向代理到Tomcat服务器时返回乱码的问题,通过调整Nginx配置,启用`X-Content-Type-Options`头信息让Nginx猜测响应格式,解决了图片显示问题。
摘要由CSDN通过智能技术生成

项目结构是 nginx----> tomcat---->ftp 图片服务器。直接通过页面访问图片资源时,图片直接返回乱码,如图:

搜索了很多帖子,大概包含以下几种方法:

尝试1:将nginx 的配置文件中,加入以下代码:

add_header content-type "image/png";

这种方式,并不适用我的这种情况。因为我的nginx 反向代理,并没有固定的图片的访问路径。图片都是在 tomcat 的运行的Web项目中,如果改成此项,整个网站都不可以访问了。下面是我的nginx 反向代理项目的配置。

尝试2:将nginx 的配置文件中,加入编码配置:

    charset utf-8;

如下图:

发现并未起作用。

经过一系列对nginx 的配置文件nginx.conf 的摸索,找到了一项配置,

add_header X-Content-Type-Options nosniff;

此配置的含义可以理解为:由nginx 自身去猜测文件类型,相应对应的格式。例如:猜测是图片类型,就会以图片的格式的响应。默认这个配置的开启的,就是不让nginx 猜测响应格式,由开发者指定。但是我这特殊,一个项目里的请求混淆的,恰好需要由nginx 去猜测响应格式。所以将此行注释掉,重启nginx,果然图片正常显示了!!!最终配置如下图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值