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

ops/2025/1/18 9:16:04/
http://www.w3.org/2000/svg" style="display: none;">

httphttps_0">从http切换至https

许多不同ip的图片地址需要统一进行代理
部分图片地址是重定向地址

nginx_4">nginx配置

主站地址:https://192.168.123.100/

server {listen       443 ssl;server_name  localhost;#ssl证书ssl_certificate ../ssl/ca.crt; #私钥文件ssl_certificate_key ../ssl/ca.key; ssl_session_cache shared:SSL:1m;                 ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;}location /proxyAgent {proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_intercept_errors on;if ($args ~* "imgUrl=(.*)") {proxy_pass $1;error_page 301 302 = @handle_redirect;}}location @handle_redirect {set $saved_redirect_location $upstream_http_location;rewrite ^(.*)$ $saved_redirect_location break;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_pass $saved_redirect_location;}
}
  • 主站html
<img src="/proxyAgent/?imgUrl=http://192.168.123.102:8093/test/123456?url=1234567&type=picpic">
<img src="/proxyAgent/?imgUrl=http://192.168.123.102/test/1.jpg">
<img src="/proxyAgent/?imgUrl=https://192.168.123.105/3.jpg">
  • 192.168.123.102:8093为java模拟重定向
@GetMapping("/{picId}")public void getPic(@PathVariable("picId") String picId,@RequestParam("url") String url,@RequestParam(value = "type") String type, HttpServletResponse response) throws IOException {if (StrUtil.isBlank(type)) {return;}if (StrUtil.isBlank(url)) {return;}System.out.println(type);System.out.println(url);response.sendRedirect("http://192.168.123.102/test/2.jpg");}

最终三张图片均可正常访问

https://i-blog.csdnimg.cn/direct/ba720af866964a76b14aef22cb47ac98.png" alt="在这里插入图片描述" />


http://www.ppmy.cn/ops/151054.html

相关文章

生成树机制实验

1 实验内容 1、基于已有代码,实现生成树运行机制,对于给定拓扑(four_node_ring.py),计算输出相应状态下的生成树拓扑 2、构造一个不少于7个节点,冗余链路不少于2条的拓扑,节点和端口的命名规则可参考four_node_ring.py,使用stp程序计算输出生成树拓扑 2 实验原理 一、…

STM32 FreeRTOS任务通知

目录 任务通知的简介 任务通知相关API函数介绍 任务通知的简介 任务通知是 FreeRTOS 中一种用于任务间通信的机制&#xff0c;它允许一个任务向其他任务发送简单的通知或信号&#xff0c;以实现任务间的同步和协作。任务通知通常用于替代二值信号量或事件标志组&#xff0c;提…

Autodl转发端口,在本地机器上运行Autodl服务器中的ipynb文件

通过 SSH 隧道将远程端口转发到本地机器 输入服务器示例的SSH指令和密码&#xff0c;将远程的6006端口代理到本地 在服务器终端&#xff0c;激活conda虚拟环境 conda activate posecnnexport PYOPENGL_PLATFORMegljupyter notebook --no-browser --port6006 --allow-root从…

android adb 无线连接 (wifi)

常见adb 命令 logcat install 安装 如果去公司忘记拿数据线了 可以使用wifi调试 adb 有一个提示 networking:connect HOST[:PORT] connect to a device via TCP/IP [default port5555]disconnect [HOST[:PORT]]disconnect from given TCP/IP device [default port55…

C语言之字符函数和字符串函数(上)

欢迎拜访&#xff1a;雾里看山-CSDN博客 本篇主题&#xff1a;C语言之字符函数和字符串函数&#xff08;上&#xff09; 发布时间&#xff1a;2025.1.17 隶属专栏&#xff1a;C语言 目录 求字符串长度strlen函数介绍函数使用函数实现 长度不受限制的字符串函数strcpy函数介绍函…

如何监控和防范小红书笔记详情API的安全风险?

流量监控与异常检测 请求频率监测&#xff1a; 建立一个系统来记录 API 的请求频率。可以通过在服务器端设置计数器或者使用专业的监控工具来实现。例如&#xff0c;对于每个 API 调用者&#xff08;可以通过 API 密钥或者用户标识来区分&#xff09;&#xff0c;记录它们在单…

Nginx 之Rewrite 使用详解

文章目录 1. 概述2. Rewrite 指令 2.1 指令语法2.2 Flag 标记说明 3. Rewrite 与 Location 3.1 Location 分类3.2 Rewrite 和 Location 比较 4. Rewrite 实际场景 4.1 基于域名的跳转4.2 基于客户端 IP 访问跳转4.3 基于参数匹配的跳转4.4 基于目录下所有 PHP 文件跳转4.5 基于…

ToDesk设置临时密码和安全密码都可以当做连接密码使用

ToDesk 在各领域办公都已经是非常常见了 为了安全 ToDesk 设置了连接密码&#xff0c;想连接 需要输入远程码和连接密码 我们刚打开 系统默认给我们用的是临时密码&#xff0c;安全性确实很强 和定时Tokey一样&#xff0c;固定时间切换。 但是 如果我们要经常连接这个电脑&a…