nginx静态代理图片

  1. nginx在一台服务器上
  2. jar包在另外一台服务器上
  3. 通过nginx反向代理上传图片显示405 请求为post
  4. 解决了405之后,图片https get访问获取不到
  5. 我的nginx为https://10.200.27.228:9215
  6. 后端jar包为10.200.27.233:8112

nginx 配置图片上传反向代理, 解决nginx 405 问题

location /file/upload {
		proxy_set_header Connection 'upgrade';
		proxy_set_header Upgrade $http_upgrade;
		proxy_pass http://10.200.27.233:8112 #后端jar包的ip和端口;  
        }

解决https请求图片不加载问题,我的请求为https://ip:port/fileStatic//.png


 1. nginx进行图片加载反向代理,因为请求为https,后端实际为http,所以进行图片代理为http
location  /fileStatic {
            proxy_pass http://10.200.27.233:8112/fileStatic;
        }
        
 2. yml文件配置
#图片实际存储linux的位置
defaultFile: /data/upload/
nginxUrl: https://10.200.27.228:9215/fileStatic/  #返回地址路径     nginx 代理路径

 3. jar包里添加如下代码
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import java.io.File;
@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {
    @Value("${defaultFile}")
    public String defaultFile;

    @Value("${nginxUrl}")
    public String nginxUrl;

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        String start = nginxUrl.substring(nginxUrl.lastIndexOf(":") + 1, nginxUrl.length());
        String urlArg[] = start.split("/");
        registry.addResourceHandler("/" + urlArg[1] + "/**").addResourceLocations("file:" + defaultFile + "/");
    }

当图片进行上传完成后,进行图片加载即可成呈现,本方法只适合单机nginx和jar包不在同一台服务器

如果nginx和jar在同一台服务器,nginx配置为

location /fileStatic {
            alias    /data/upload;
            add_header Access-Control-Allow-Origin *;
            add_header Access-Control-Allow-Methods 'GET,POST';
            add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
            autoindex on;
            autoindex_exact_size off;
            autoindex_localtime on;
            charset utf-8,gbk;
        }
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值