首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过.htaccess文件将.png镜像重定向到另一个.png镜像

通过.htaccess文件将.png镜像重定向到另一个.png镜像
EN

Stack Overflow用户
提问于 2020-10-15 15:34:11
回答 1查看 76关注 0票数 1

说到.htaccess,我还是个新手

我有一些图像需要重定向。

示例:

代码语言:javascript
运行
复制
assets/images/image1.png

重定向到

代码语言:javascript
运行
复制
assets/images/image1_v2.png

所以当你直接访问它的时候:

代码语言:javascript
运行
复制
https://www.example.com/assets/images/image1.png

它被重定向到:

代码语言:javascript
运行
复制
https://www.example.com/assets/images/image1_v2.png

注意:image1.pngimage1_v2.png是两个不同的镜像,当它被直接访问时,我只考虑重定向它。

EN

回答 1

Stack Overflow用户

发布于 2020-10-15 20:27:13

我假设你所说的“直接访问”是指当用户直接在浏览器的地址栏中输入URL时?在这种情况下不会发送HTTP Referer报头。

在根.htaccess文件的顶部,您可以执行类似以下操作,将用户从外部“重定向”到新的图像URL:

代码语言:javascript
运行
复制
RewriteEngine On

RewriteCond %{HTTP_REFERER} ^$
RewriteRule ^assets/images/image1\.png$ /assets/images/image1_v2.png [R,L]

请注意,这是302 (临时)重定向。

或者,为了避免重复,您可以将RewriteRule指令更改为:

代码语言:javascript
运行
复制
RewriteRule ^(assets/images/image1)\.png$ /$1_v2.png [R,L]

$1反向引用通过从请求的URL-path中捕获“assets/Image1/Image1”部分并在替换字符串中使用它来避免重复。

请注意,用户(通过他们的浏览器)可以控制作为请求的一部分发送的Referer头,因此用户可以使其看起来像“直接请求”,而实际上不是“直接请求”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64366850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档