黄邱小鸟 2023-08-03 12:47 采纳率: 33.3%
浏览 3

使用nignx插件image_filter生成缩略图时如何使用$获取正则变量

使用场景: 基于nginx配合插件image_filter实现对文件服务器fastdfs中的文件的实时缩略图。
现在配置过程中遇到问题,group分组用$取不到,所以想问问怎么处理这个。
如何使用$获取Group后面的正则数,不然我要复制十份出来把这部分。

img

  • 写回答

2条回答 默认 最新

  • 醉心编码 博客专家认证 2023-08-03 13:46
    关注

    对于nginx的image_filter模块来说,它是不能直接获取fastdfs的group信息的。但是,你可以通过一些其他的方式来解决这个问题。

    一种常见的解决方案是,在nginx的配置文件中使用nginx的变量来存储group的信息。首先,你需要在nginx的http部分定义一个新的变量,比如 $fastdfs_group,然后再使用rewrite指令进行设置。具体的配置示例如下:

    http {
        ...
        # 定义变量
        set $fastdfs_group "";
    
        # 使用rewrite指令从URI中提取group信息
        rewrite ^/group/(.*)$ /$1 break;
        rewrite ^/([a-zA-Z0-9]+)/(.*)$ /$2 break;
        set $fastdfs_group $1;
    
        # 配置image_filter模块
        location /thumbnail {
            image_filter resize 200 200;
            image_filter_jpeg_quality 80;
            image_filter_buffer 5M;
            image_filter_interlace on;
            proxy_pass http://fastdfs_backend/$fastdfs_group$request_uri;
        }
        ...
    }
    

    上述配置将URI中的/group/部分提取出来,并赋值给$fastdfs_group变量。然后,在proxy_pass指令中使用$fastdfs_group来拼接请求的URL,实现对fastdfs中文件的实时缩略图处理。

    通过这种方式,你不需要复制多份配置进行处理,而是通过使用变量来动态获取group信息。希望这个解决方案对你有帮助!如果还有其他问题,请随时提问。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月3日

悬赏问题

  • ¥15 renpy的jump语句后支线lable报错
  • ¥15 静电纺丝煅烧后如何得到柔性纤维
  • ¥15 (标签-react native|关键词-镜像源)
  • ¥100 照片生成3D人脸视频
  • ¥15 伪装视频时长问题修改MP4的时长问题,
  • ¥15 JETSON NANO
  • ¥15 VS开发qt时如何在paintgl函数中用pushbutton控制切换纹理
  • ¥20 关于 openpyxl 处理excel文件地问题
  • ¥15 MS中不知道高分子的构型怎么构建模型
  • ¥60 QQOP数据,什么是op数据号,怎么提取op数据!能不能大量提取(语言-c语言)