*nix 托管 - 如果引荐来源网址不匹配,则将下载重定向到主页

发布于 2024-08-23 13:55:16 字数 74 浏览 4 评论 0原文

我有一个软件包放置在我的网站的根目录中。我希望所有来自其他网站的访问者在下载之前先查看主页。我怎样才能在不使用脚本的情况下做到这一点?

I have a software package placed in the root directory of my website. I'd like all visitors which come from other websites to see the homepage first, before they download. How can I do that without using a script?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦过后 2024-08-30 13:55:16

Apache 的 mod_rewrite 可以做到这一点。它可以测试“HTTP_REFERER”变量并创建重定向。

示例来自 http://httpd.apache.org/docs/2.0/misc/重写指南.html

描述:

假设我们有
http://www.quux-corp.de/~quux/ 一些
带有内嵌 GIF 图形的页面。这些
图形很好,所以其他直接
通过超链接将它们合并到
他们的页面。我们不喜欢这个
练习,因为它增加了无用的
到我们服务器的流量。解决方案:

虽然我们不能 100% 保护
来自包容性的图像,我们至少可以
限制浏览器的情况
发送 HTTP Referer 标头。

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule .*\.gif$        -                                    [F]

RewriteCond %{HTTP_REFERER}         !^$
RewriteCond %{HTTP_REFERER}         !.*/foo-with-gif\.html$
RewriteRule ^inlined-in-foo\.gif$   -                        [F]

其他变体 http://articles.sitepoint.com/print/apache-mod_rewrite-examples< /a>

RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/.*$ [NC]  
RewriteRule \.(gif|jpg|png)$ http://www.example.com/hotlinked.gif [R=301,L]

第一行检查引用者是否为空。第二 - 如果它不是您的域。
第三个将“错误查询”重定向到“hotlinked.gif”

Apache's mod_rewrite can do this. It can test 'HTTP_REFERER' variable and create a redirect.

Example from http://httpd.apache.org/docs/2.0/misc/rewriteguide.html

Description:

Assume we have under
http://www.quux-corp.de/~quux/ some
pages with inlined GIF graphics. These
graphics are nice, so others directly
incorporate them via hyperlinks to
their pages. We don't like this
practice because it adds useless
traffic to our server. Solution:

While we cannot 100% protect the
images from inclusion, we can at least
restrict the cases where the browser
sends a HTTP Referer header.

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule .*\.gif$        -                                    [F]

RewriteCond %{HTTP_REFERER}         !^$
RewriteCond %{HTTP_REFERER}         !.*/foo-with-gif\.html$
RewriteRule ^inlined-in-foo\.gif$   -                        [F]

Other variant http://articles.sitepoint.com/print/apache-mod_rewrite-examples

RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/.*$ [NC]  
RewriteRule \.(gif|jpg|png)$ http://www.example.com/hotlinked.gif [R=301,L]

First line checks if referer is empty. second - if it is not your domain.
Third will redirect "bad queries" to "hotlinked.gif"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文