将pdf的外部请求重定向到嵌入pdf的页面

时间:2017-03-25 17:27:42

标签: .htaccess pdf redirect mod-rewrite http-referer

在使用Joomla!构建的网站中,我会将外部pdf请求重定向到使用iframe或object元素嵌入pdf的页面。

我试图通过htaccess来做但它不起作用。似乎HTTP_REFERER不能正常工作。似乎嵌入式pdf的请求被视为外部请求。

当我请求mywebsite.com/pdf/filename.pdf时,我被重定向到mywebsite.com/filename,但嵌入式pdf本身也被无限循环重定向到mywebsite.com/filename!

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^mywebsite\.com [NC]
RewriteRule ^pdf/\filename\.pdf$ http://website.com/filename [R=300,L]

以下是嵌入式pdf的html代码:

<object data="/pdf/filename.pdf" type="application/pdf">
    <p>This browser does not support PDFs.</p>
</object>

有没有人可以帮助我理解捕获的是什么?

如何将pdf的外部请求重定向到嵌入式pdf的页面?

谢谢!

1 个答案:

答案 0 :(得分:2)

由于HTTP_REFERER包含协议(http://),因此您无法使用^。或者需要添加它。

尝试:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !mywebsite\.com [NC]
RewriteRule ^pdf/filename\.pdf$ http://website.com/filename [NC,R=302,L]

或者:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://mywebsite\.com [NC]
RewriteRule ^pdf/filename\.pdf$ http://website.com/filename [NC,R=302,L]