如何防止顯示下面的代碼在源代碼中的img標籤。如何防止顯示源代碼
img標籤代碼
echo'<img src="jal.gif" alt="Smiley face" height="42" width="42" />';
源代碼
<img alt"Smiley face" src="http://www.myweb.com/jal.gif">
其實我不想顯示用戶圖像路徑。
感謝
如何防止顯示下面的代碼在源代碼中的img標籤。如何防止顯示源代碼
img標籤代碼
echo'<img src="jal.gif" alt="Smiley face" height="42" width="42" />';
源代碼
<img alt"Smiley face" src="http://www.myweb.com/jal.gif">
其實我不想顯示用戶圖像路徑。
感謝
您可以使用代理,這是使用PHP網頁,其中實際加載想要的圖像。例如,你可以有這樣的:
<img src="my_proxy.php?img=jal.gif" alt="Smiley face" height="42" width="42" />
,然後my_proxy.php
頁面將實際加載要使用img
參數的圖像。
我想你想這樣的事情,提交圖片的HTML文件,用base64編碼:
<img alt="Smiley face" src="data:image/jpeg;base64,<?php echo base64_encode(file_get_contents("jal.gif")); ?>" />
其工作正常,但問題是,它增加了頁面的大小....因爲我有一個頁面各處20個圖像.... – Fou 2012-08-06 00:17:44
我不知道的方式,真正隱藏路徑,但您可以使用CSS至少讓用戶通過一些研究來查找圖像的文件路徑。將一個div內部圖像,並給予該div背景圖像,像這樣
<div id="imgdiv"></div>
在CSS:
#imgdiv{
background-image: url('http://www.myweb.com/jal.gif');
}
這也是不錯的,因爲用戶將不能夠拖動您的圖像客場瀏覽器。
很抱歉,但以何種方式解決這「隱藏」開用戶具有查看的CSS源的事實的路徑? – 2012-08-06 00:08:57
正如我所說的,它肯定不會隱藏路徑 - 只要使其更復雜一點。 – weltschmerz 2012-08-06 00:11:01
從我的最後的解決方案:)
代碼的安全漏洞,如果你一個好的解決方案,我將修改我的職位和修復這些安全漏洞。沒有嘗試過的代碼。但爲了工作,瀏覽器必須支持Cookie會話,並且它不是完美的解決方案。用戶可以通過嗅探器或瀏覽器右擊獲取圖像。完美的加密是不可能的。 (可以實現javscript解密也與阿賈克斯後)
我preassume包含在網頁session_start()
。
showimage.php
<?php
session_start();
header("Cotent-Type: image/jpeg");
readfile($_SESSION["files"][$_REQUEST["id"]]);
?>
的index.php
<?php
session_start();
$i=rand();
$_SESSION["files"][$i]="cat.jpg";
echo "<img src=\"showimage.php?id=".$id."\" />";
?>
這有什麼做用PHP ... – weltschmerz 2012-08-06 00:04:22
這是對一些安全原因?你意識到不可能從用戶那裏隱藏它,對吧?瀏覽器工具,代理,數據包嗅探器... – Brad 2012-08-06 00:05:50