【问题标题】:Redirect raw .gif files to handler page via .htacces重定向原始 .gif 文件以通过 .htaccess 处理页面
【发布时间】:2015-05-29 23:02:51
【问题描述】:

我有一个病毒图片网站,人们可以在其中查看有趣的 GIF。然而,reddit 上的很多人都在分享原始的 .gif 文件,而不是嵌入了 .gif 的页面。这很好 - 但我想将所有查看原始图像 .gifs 的人重定向到一个名为 shareraw.php 的处理程序页面(位于根目录中)。这个处理程序页面看起来完全一样 - 只是带有一个共享链接和按钮来查看网站的其余部分。

我已经创建了页面。我现在只需要正确的 .htaccess 命令来执行我所描述的操作。请帮忙!谢谢:)

【问题讨论】:

    标签: php mysql .htaccess redirect web


    【解决方案1】:

    您可以通过检查 HTTP_REFERER 中的 .gif 请求来做到这一点。如果请求不是来自您的站点,则将用户重定向到您的 shareraw.php 文件。

    将此添加到您的网络根/ 目录中的.htaccess

    Options +FollowSymLinks -MultiViews
    RewriteEngine on
    
    RewriteCond %{HTTP_REFERER} !^http://(www\.)?mysite\.com/ [NC]
    RewriteCond %{REQUEST_URI} /uploads/.*\.gif$ [NC]
    RewriteRule ^(.*)$ /shareraw.php?img=$1 [R,L]
    

    您只需要调整规则以适应病毒 gif 的存储位置以及 gif 名称或路径如何传递到您的 shareraw.php

    【讨论】:

    • 我不需要获取 gif 图像的确切目录,必须有一种方法来检查 url 是否以 .gif 结尾。
    • 确定要那个吗?因为它甚至会开始重定向用于布局您的网站(边框、背景等)的各种 gif,而不仅仅是重定向实际的病毒式内容。
    • 有没有办法可以重定向浏览器中直接存在的任何原始 gif?例如,我网站上的内容页面可能是 gifsec.com/funny/gif-cat-fight-2 。我不想重定向此内容页面。然而,原始图像链接是 gifsec.com/wp-content/uploads/GIF/2014/04/GIF-Cat-fight.gif 。我不能使用 HTaccess 来查看地址栏是否以 .gif 结尾并重定向任何正在查看原始图像页面的用户吗?例如:gifsec.com/wp-content/uploads/GIF/2014/04/GIF-Cat-fight.gif 将重定向到whatever.com/shareraw。但不是内容页面
    • 使用%{REQUEST_URI} /uploads/.*\.gif$,如我的更新所示。它将所有 .gif 上传的所有直接浏览器请求重定向到您的共享页面。
    • 试过了,好像没用。这是 htacess 文件代码:stackoverflow.com/questions/29382639/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-07
    • 2014-03-15
    相关资源
    最近更新 更多