我正在尝试使用设置为原始 PDF 路径的参数“ref”将 PDF URL 重写为中间 html 页面。此中间页面是用于跟踪 PDF 视图的分析工具。它使用 JavaScript 记录视图,然后重定向回实际的 PDF 源 URL。
http://www.mydomain.com/dir/some-pdf.pdf应该重写为:http://www.mydomain.com/elqNow/elqRedir.htm?ref=http(s)://www.mydomain。 com/dir/some-pdf.pdf
基本上,该规则需要在 %{REQUEST_URI}、%{HTTP_REFERER} 中检查 /elqNow/elqRedir.htm 并且“ref”参数需要是完整路径,例如 http(s)*://%{HTTP_HOST}/PDF_URL (无法弄清楚如何在没有硬编码的情况下添加 http 或 https。)
这是我到目前为止所拥有的,这会产生一个讨厌的循环:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !/elqNow/elqRedir\.htm$
RewriteRule ^(.+\.pdf|PDF)$ elqNow/elqRedir.htm?ref=http://%{HTTP_HOST}/$1 [R=301, L]
感谢帮助!