.htaccess规则,不更改文件名/查询字符串

时间:2014-01-03 09:59:03

标签: .htaccess redirect cross-domain

我有两个域 - 一个成功转发到另一个域。我还有一个PHP脚本来创建动态PDF。我的主要网站htaccess规则大致就是......

RewriteRule (.*)poster.pdf(.*)  /pdfs.php?format=poster [L]  
RewriteRule (.*)leafletpdf(.*)  /pdfs.php?format=leaflet [L]

这对于主站点来说非常有效 - 即用户看到并可以下载poster.pdf& leaflet.pdf但我必须添加完整的域名才能使其适用于重定向的网站,即

RewriteRule (.*)poster.pdf(.*)  http://www.mydomain.com/pdfs.php?format=poster [L]  
RewriteRule (.*)leaflet.pdf(.*)  http://www.mydomain.com/pdfs.php?format=leaflet [L]

现在重定向网站正确生成PDF,但用户在地址栏中看到了......

http://www.mydomain.com/pdfs.php?format=leaflet[L]

...这使得下载和保存PDF变得尴尬。我很欣赏所涉及的安全问题,我对将域名更改为重定向到站点没有任何问题,但有什么方法可以保留干净的.pdf文件名吗?

1 个答案:

答案 0 :(得分:1)

在您的主站点上,您可以拥有:

RewriteRule (.*)poster.pdf(.*) http://www.mydomain.com/poster.pdf [L,R=301]
RewriteRule (.*)leaflet.pdf(.*) http://www.mydomain.com/leaflet.pdf [L,R=301]

在你的第二个网站上你可以拥有:

RewriteRule (poster|leaflet)\.pdf /pdfs.php?format=$1 [L]