什麼方法可以判定程式是在本地運行還是在伺服器上運行

來源:互聯網
上載者:User
朋友們,早上好,請問什麼方法可以判定程式是在本地運行還是在伺服器上運行?
比如說
本地localhost/website或127.0.0.1/website
伺服器www。website。com

我想的目的就是有一個變數$a
當在伺服器上是$a=3,當在本地時$a=2,就只是為了這個。


回複討論(解決方案)

判斷 $_SERVER['HTTP_HOST'] 的值

判斷 $_SERVER['HTTP_HOST'] 的值


我也想到用這個,判斷裡面是否包含"localhost"或"127.0.0.1'之類的,但是總感覺好像不是那麼爽一樣的。

不是包含而是等於
為什麼是 "localhost"或"127.0.0.1'之類的
判斷是否等於 www.website.com 不就行了?

不是包含而是等於
為什麼是 "localhost"或"127.0.0.1'之類的
判斷是否等於 www.website.com 不就行了?


www.website.com後面還有可能是參數呢www.website.com/code=123&.....

你自己列印出來看看不就清楚了?
echo $_SERVER['HTTP_HOST'];

你自己列印出來看看不就清楚了?
echo $_SERVER['HTTP_HOST'];


你說的是“判斷是否等於 www.website.com 不就行了?”,但是有可能是帶www和不帶www的,就是在糾結這個問題。

我是用strpos匹配$_SERVER['HTTP_HOST']和目標網域名稱或網址,自動判斷運行環境

可以判斷mac地址。不同的電腦,mac不同。

那有什麼可糾結的?入股你的伺服器是支援次層網域的,那就開列一下
in_array($_SERVER['HTTP_HOST'], array(網域名稱列表))
也可以用字串比較

總之你不要閉門造車就可以了



你自己列印出來看看不就清楚了?
echo $_SERVER['HTTP_HOST'];


你說的是“判斷是否等於 www.website.com 不就行了?”,但是有可能是帶www和不帶www的,就是在糾結這個問題。

謝謝,你的回答解決了問題,不要閉門造車,非常好。

那有什麼可糾結的?入股你的伺服器是支援次層網域的,那就開列一下
in_array($_SERVER['HTTP_HOST'], array(網域名稱列表))
也可以用字串比較

總之你不要閉門造車就可以了




你自己列印出來看看不就清楚了?
echo $_SERVER['HTTP_HOST'];


你說的是“判斷是否等於 www.website.com 不就行了?”,但是有可能是帶www和不帶www的,就是在糾結這個問題。
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.