利用nginx搭建通用的图片署理服务器,支持http/https/重定向式图片地址 ...

打印 上一主题 下一主题

主题 838|帖子 838|积分 2514

从http切换至https

   许多差别ip的图片地址需要统一举行署理
部分图片地址是重定向地址
  nginx设置

   主站地址:https://192.168.123.100/
  

  • 主站nginx设置
  1. server {
  2.         listen       443 ssl;
  3.         server_name  localhost;
  4.         
  5.         #ssl证书
  6.         ssl_certificate ../ssl/ca.crt;
  7.         #私钥文件
  8.         ssl_certificate_key ../ssl/ca.key;
  9.         ssl_session_cache shared:SSL:1m;                 
  10.         ssl_session_timeout 5m;
  11.         ssl_ciphers HIGH:!aNULL:!MD5;
  12.         ssl_prefer_server_ciphers on;
  13.          
  14.         #charset koi8-r;
  15.         #access_log  logs/host.access.log  main;
  16.         location / {
  17.             root   html;
  18.             index  index.html index.htm;
  19.         }
  20.         location /proxyAgent {
  21.           proxy_set_header Host $host;
  22.                 proxy_set_header X-Real-IP $remote_addr;
  23.                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  24.                 proxy_set_header X-Forwarded-Proto $scheme;
  25.           proxy_intercept_errors on;
  26.           if ($args ~* "imgUrl=(.*)") {
  27.                 proxy_pass $1;
  28.                 error_page 301 302 = @handle_redirect;
  29.           }
  30.         }
  31.         location @handle_redirect {
  32.                 set $saved_redirect_location $upstream_http_location;
  33.                 rewrite ^(.*)$ $saved_redirect_location break;
  34.                 proxy_set_header Host $host;
  35.                 proxy_set_header X-Real-IP $remote_addr;
  36.                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  37.                 proxy_set_header X-Forwarded-Proto $scheme;
  38.                 proxy_pass $saved_redirect_location;
  39.         }
  40. }
复制代码


  • 主站html
  1. <img src="/proxyAgent/?imgUrl=http://192.168.123.102:8093/test/123456?url=1234567&type=picpic">
  2. <img src="/proxyAgent/?imgUrl=http://192.168.123.102/test/1.jpg">
  3. <img src="/proxyAgent/?imgUrl=https://192.168.123.105/3.jpg">
复制代码


  • 192.168.123.102:8093为java模拟重定向
  1. @GetMapping("/{picId}")
  2.     public void getPic(@PathVariable("picId") String picId,
  3.                        @RequestParam("url") String url,
  4.                        @RequestParam(value = "type") String type, HttpServletResponse response) throws IOException {
  5.         if (StrUtil.isBlank(type)) {
  6.             return;
  7.         }
  8.         if (StrUtil.isBlank(url)) {
  9.             return;
  10.         }
  11.         System.out.println(type);
  12.         System.out.println(url);
  13.         response.sendRedirect("http://192.168.123.102/test/2.jpg");
  14.     }
复制代码
终极三张图片均可正常访问



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

卖不甜枣

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表