摘要:起就在中內(nèi)置了服務(wù)器但只是提供開發(fā)測(cè)試使用,不推薦使用中生產(chǎn)環(huán)境中。因?yàn)檫@個(gè)服務(wù)器接受處理請(qǐng)求時(shí)順序執(zhí)行的,不能并發(fā)處理。這個(gè)內(nèi)置的服務(wù)器使用起來非常的方便,你只需要執(zhí)行下面的命令啟動(dòng)服務(wù)器然后就可以訪問了。
PHP 5.4起就在CLI SAPI中內(nèi)置了web服務(wù)器,但只是提供開發(fā)測(cè)試使用,不推薦使用中生產(chǎn)環(huán)境中。因?yàn)檫@個(gè)服務(wù)器接受處理請(qǐng)求時(shí)順序執(zhí)行的,不能并發(fā)處理。
這個(gè)內(nèi)置的web服務(wù)器使用起來非常的方便,你只需要執(zhí)行下面的命令:
啟動(dòng)Web服務(wù)器$ php -S localhost:8000
然后就可以訪問了。這樣啟動(dòng)后,默認(rèn)的web服務(wù)目錄是執(zhí)行命令的當(dāng)前目錄,如果不想使用當(dāng)前目錄,你需要使用 -t 參數(shù)來指定。
啟動(dòng)web服務(wù)器時(shí)指定文檔的根目錄php -S localhost:8000 -t foo/使用路由器腳本
在這個(gè)例子中,對(duì)圖片的請(qǐng)求會(huì)返回相應(yīng)的圖片,但對(duì)HTML文件的請(qǐng)求會(huì)顯示“Welcome to PHP”:
// router.php if (preg_match("/.(?:png|jpg|jpeg|gif)$/", $_SERVER["REQUEST_URI"])) { return false; // serve the requested resource as-is. } else { echo "Welcome to PHP
"; }
$ php -S localhost:8000 router.php判斷是否是在使用內(nèi)置web服務(wù)器
通過程序判斷來調(diào)整同一個(gè)PHP路由器腳本在內(nèi)置Web服務(wù)器中和在生產(chǎn)服務(wù)器中的不同行為:
// router.php if (php_sapi_name() == "cli-server") { /* route static assets and return false */ } /* go on with normal index.php operations */
$ php -S localhost:8000 router.php
這個(gè)內(nèi)置的web服務(wù)器能識(shí)別一些標(biāo)準(zhǔn)的MIME類型資源,它們的擴(kuò)展有:.css, .gif, .htm, .html, .jpe, .jpeg, .jpg, .js, .png, .svg, and .txt。對(duì).htm 和 .svg 擴(kuò)展到支持是在PHP 5.4.4之后才支持的。
處理不支持的文件類型如果你希望這個(gè)Web服務(wù)器能夠正確的處理不被支持的MIME文件類型,這樣做:
// router.php $path = pathinfo($_SERVER["SCRIPT_FILENAME"]); if ($path["extension"] == "ogg") { header("Content-Type: video/ogg"); readfile($_SERVER["SCRIPT_FILENAME"]); } else { return FALSE; }
$ php -S localhost:8000 router.php遠(yuǎn)程訪問這個(gè)內(nèi)置Web服務(wù)器
如果你希望能遠(yuǎn)程的訪問這個(gè)內(nèi)置的web服務(wù)器,你的啟動(dòng)命令需要改成下面這樣:
$ php -S 0.0.0.0:8000
這樣你就可以通過 8000 端口遠(yuǎn)程的訪問這個(gè)內(nèi)置的web服務(wù)器了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/31464.html
摘要:概述字節(jié)碼緩存不是的新特性,有很多獨(dú)立的擴(kuò)展可以實(shí)現(xiàn),比如和等,但是截至目前這些擴(kuò)展都沒有集成到內(nèi)核,從開始,內(nèi)置了字節(jié)碼緩存功能,名為。開始之前,我們先來看看什么是字節(jié)碼緩存,以及字節(jié)碼緩存的作用是什么。該函數(shù)將重置整個(gè)字節(jié)碼緩存。 概述 字節(jié)碼緩存不是PHP的新特性,有很多獨(dú)立的擴(kuò)展可以實(shí)現(xiàn),比如APC、eAccelerator和Xache等,但是截至目前這些擴(kuò)展都沒有集成到PHP...
摘要:簡(jiǎn)介是才有的新功能,它是用來導(dǎo)出或提取出關(guān)于類方法屬性參數(shù)等的詳細(xì)信息,包括注釋。 簡(jiǎn)介 PHP Reflection API是PHP5才有的新功能,它是用來導(dǎo)出或提取出關(guān)于類、方法、屬性、參數(shù)等的詳細(xì)信息,包括注釋。 class Reflection { } interface Reflector { } class ReflectionException extends Exce...
摘要:而依賴倒置原則的思想是,上層不應(yīng)該依賴下層,應(yīng)依賴接口。上面通過構(gòu)造函數(shù)注入對(duì)象的方式,就是最簡(jiǎn)單的依賴注入當(dāng)然注入不僅可以通過構(gòu)造函數(shù)注入,也可以通過屬性注入,上面你可以通過一個(gè)來動(dòng)態(tài)為這個(gè)屬性賦值。 依賴倒置和控制反轉(zhuǎn)是一種編程思想,而依賴注入就是通過服務(wù)容器實(shí)現(xiàn)這種面向接口或者是面向抽象編程的思想 概念理解 依賴倒置原則 依賴倒置是一種軟件設(shè)計(jì)思想,在傳統(tǒng)軟件中,上層代碼依賴于下...
摘要:概述是新進(jìn)入的特性,其目的就是解決的類不能多繼承的問題??梢岳斫鉃橐唤M能被不同的類都能調(diào)用到的方法集合。只需要在類中使用關(guān)鍵詞引入即可,可引入多個(gè),用隔開。為了解決多個(gè)在同一個(gè)類中的命名沖突,需要使用操作符來明確指定使用沖突方法中的哪一個(gè)。 概述 traits是PHP5.4新進(jìn)入的特性,其目的就是解決PHP的類不能多繼承的問題。Traits不是類!不能被實(shí)例化。可以理解為一組能被不同的...
說明 魔術(shù)方法就是在特定場(chǎng)景下不需要調(diào)用而自動(dòng)執(zhí)行的方法。因?yàn)橛心g(shù)方法,所以我們的類可以寫得很靈活~ __construct #構(gòu)造方法,在類被實(shí)例化時(shí)自動(dòng)調(diào)用,一般用于初始化操作; __destruct #析構(gòu)方法,對(duì)象被銷毀時(shí)自動(dòng)調(diào)用; __clone() #克隆方法,當(dāng)對(duì)象被克隆時(shí),將會(huì)自動(dòng)調(diào)用 __get($key) #屬性獲取...
閱讀 1969·2021-09-30 09:46
閱讀 1378·2019-08-30 15:43
閱讀 1133·2019-08-29 13:28
閱讀 1934·2019-08-29 11:24
閱讀 1701·2019-08-26 13:22
閱讀 3982·2019-08-26 12:01
閱讀 1831·2019-08-26 11:33
閱讀 3253·2019-08-23 15:34