幾年來,我一直在使用通常建議的方法來檢查是否一個頁面被檢查本地或遠程調用$_SERVER['SERVER_ADDR']
是否等於127.0.0.1或者是空的。其他問題已經討論過,例如this和this。其他超全球植物如$_SERVER['REMOTE_ADDR']
也經常被提及。更好的方法來檢查,如果腳本開發服務器或督促服務器上運行
隨着時間的推移,我發現這種方法有時似乎失敗了。
我真正想知道的是腳本是否已被調用我的dev的服務器(XAMPP,WAMP,IDE調試器...)或在生產服務器上。這樣就可以正確設置Web根目錄上的腳本路徑。雖然這可以工作99.999%,但有時候,當Apache重定向到404頁時,$_SERVER['SERVER_ADDR']
必須丟失,並且在生產服務器上運行的腳本通過「本地」測試。
因此,我正在尋找其他方法。當然,我可能在Apache中做了一些錯誤的事情,但無論如何,在PHP中進行一個簡單的測試都是非常好的。
一對夫婦的想法來找我,我不知道這是否是安全的,或者是否有人有更好的主意。
A.一個想法是看看當前路徑:像
define ('DEV_SERVER',
(substr(
strtolower($_SERVER['DOCUMENT_ROOT']),
0,8)
=="c:/xampp")
);
B.另一個想法是要檢查有特定名稱的本地文件的存在,但碰到文件系統似乎工作太多了。
在此先感謝您的所有見解!
只需定義一個相應的環境變量(在你的apache虛擬主機配置中) – zerkms