【问题标题】:.htaccess , How to redirect any .jpg page to its attachment page (HTML).htaccess ,如何将任何 .jpg 页面重定向到其附件页面 (HTML)
【发布时间】:2016-12-28 17:46:26
【问题描述】:

我想重定向

www.domain.com/images/Apple.jpg



www.domain.com/Apple.html

这是 Live 工作示例,这正是我想要的
http://more-sky.com/data/out/2/IMG_21306.jpg

它如何重定向到其父页面,即 (http://more-sky.com/WDF-21306.html)

【问题讨论】:

  • 你有没有一组记录,this image 应该被重定向到that page

标签: html .htaccess redirect


【解决方案1】:

假设您在 Apache 中启用了 mod_rewrite

RewriteEngine On
RewriteBase /
RewriteRule ^images/([^\.]+)\.(jpe?g|png) /$1.html  [QSA,L]

编辑: 正如 Wh1T3h4Ck5 所注意到的,QSAQuery String Append)标志是可选的,LLast em>) 将取决于上下文和其他规则。请阅读RewriteRule flags 了解更多信息。


澄清一下:此解决方案假定具有图像名称的 HTML 文档已经存在。比如:

<html>
    <head>
        <title>Apple</title>
    </head>
    <body>
        <img src="images/Apple.jpg" alt="Apple">
    </body>
</html>

这不是大量图像的最佳解决方案,但它似乎适合 OP 的情况。

【讨论】:

  • QSA 将查询字符串(如果有)附加到重定向的 URL。你指出这一点是对的。它应该是完全可选的。
  • 是的,我知道。被问到只是因为/$1.html 替换没有要附加的 GET 参数,而且在我看来,QSA 指令在这条规则中什么都不做是合乎逻辑的;)无论如何,尽管有 QSA,但答案是正确的。
  • 感谢您的帮助,但是这种方法也改变了图像文件的扩展名(image.jpg 到 image.html).. 并且图像没有显示在网页中
  • 好吧@Rohit,您显然需要创建一个具有相同名称和.html 扩展名的HTML 页面才能正常工作。但是,请再次阅读您自己的问题。您要求将www.domain.com/images/Apple.jpg 重定向到www.domain.com/Apple.html
  • @jordi nebot ,我非常感谢您的帮助,但是在输入您的代码后,我的网页上的图像路径损坏了。让我直接说我到底想要什么。我希望用户在点击谷歌图片搜索上的查看全图时重定向到我的网页。我现在得到的是,用户直接掉到了 jpg 页面。如果你认为还有其他方法可以做到这一点,那么请纠正我
猜你喜欢
  • 1970-01-01
  • 2010-10-07
  • 1970-01-01
  • 1970-01-01
  • 2012-01-02
  • 2021-12-20
  • 1970-01-01
  • 2016-07-20
相关资源
最近更新 更多