我怎麼能知道當圖像(PHP產生的)從我的網站或另一個叫什麼名字?如何知道使用PHP生成的圖像是從我的網站還是其他網站請求的?
我試圖與
if(eregi("mydomain.com", $_SERVER[SERVER_NAME])
,但似乎總回報真正即使
<img src='..linktofilephptogeneratetheimage..' >
位於花葯服務器上
感謝
我怎麼能知道當圖像(PHP產生的)從我的網站或另一個叫什麼名字?如何知道使用PHP生成的圖像是從我的網站還是其他網站請求的?
我試圖與
if(eregi("mydomain.com", $_SERVER[SERVER_NAME])
,但似乎總回報真正即使
<img src='..linktofilephptogeneratetheimage..' >
位於花葯服務器上
感謝
你會想使用$ _SERVER ['HTTP_REFERER']來獲取引用圖像的頁面。然後將此路徑與您期望從(您自己的站點)訪問圖像的域匹配。
如果它是可以接受的,則服務形象;如果不是,則回顯一個虛擬圖像或其他東西。
注:此變量可以由一些Web客戶端進行人工編輯,但如果你只是想避免人們使用您的網站供職於其他頁面的圖像,它應該是足夠可靠。
我只是現在把它們捆起來,但似乎仍然這麼想的與 \t工作,如果死了( '錯誤')(eregi( 「mydomain.com」,$ _ SERVER [ 'HTTP_REFERER'])!); – oscurodrago 2011-04-22 23:49:06
@oscurodrago:使用[strpos](http://php.net/strpos)。 ereg已棄用(其替換爲[preg_match](http://php.net/preg_match))。 – netcoder 2011-04-22 23:51:52
我可以問你爲什麼使用折舊的PHP函數?如果你只是想看看該域名是在引用字符串,就使用if(strpos($ _ SERVER [ 'HTTP_REFERER'], 「mydomain.com」)> - 1),或者如果(的preg_match(「MYDOMAIN \ .COM」,$ _ SERVER [ 'HTTP_REFERER'])!= 0)。 – BraedenP 2011-04-22 23:55:11
簡單說明:自PHP.net recommands去PHP5.3 eregi是會很快depricated。 – Thew 2011-04-22 23:41:06