2012-11-24 85 views
2

我有一個列出很多照片鏈接的頁面。點擊一個鏈接將帶你到一個page.php頁面,看到圖像本身與水印和一些其他的東西(由PHP添加)。我想要的是,如果人們直接轉到大圖像(本身沒有水印),他們將被重定向到page.php頁面,以便應用水印。使用.htaccess重定向直接鏈接到圖像到php頁面

定期的html文件

<a href="/page.php?i=image1" target="new">Link to Image 1</a> 

page.php文件

的部分
<?php $file = $_GET['i']; ?> 
<img src="/img/<?php echo $file ?>.png" /> 

我把在.htaccess這行代碼下面是我在這個論壇上找到該鏈接的例子。但是,重定向工作時,圖像不會顯示在page.php和其他html文件上。我想圖片鏈接也受到重定向的影響,並且會被破壞。你能幫忙嗎?謝謝!

RewriteRule ^img/(.*)\.png$ /page.php?i=$1 [NC,L] 
+1

但重定向的作品?例如:site.com/img/someimg.png重定向到site.com/i=someimg.png? PD。 StackOverflow不是論壇 –

+0

是的,重定向工作 - 就像你所描述的 - 只是圖像不在那裏。查看源代碼驗證圖片鏈接是否正確。這讓我認爲圖像鏈接受到重定向的影響。 – Michelle

+0

圖片的src路徑是否正確?我的意思是,生成的路線是正確的?重定向不是問題 –

回答

2

問題是您的img標籤喜歡重寫URL。所以,你應該允許空引用,這是第一行:

RewriteCond %{HTTP_REFERER} ^$ 
RewriteRule ^img/(.*)\.png$ /page.php?i=$1 [NC,L]