PHP5.4.0起,PHP內置了Web服務器。對本地開發是個極好的工具,便捷,無需安裝WAMP、XAMP或大新那個web服務器,就能在本地調試了。
啟動服務器
進入項目的根目錄下,執行命令
php -S localhost:4000 #地址:監聽端口
或者 直接指定網站根目錄
php -S localhost:4000 -t D:\website
瀏覽器打開 localhost:4000,就可以進入到網站瀏覽應用。
如想停止PHP Web服務器,可關閉終端應用或按Ctrl+C。
配置服務器
指定初始化文件。使用專屬的php初始配置文件,對內存用量、文件上傳、分析或字節碼緩存有特殊要求。
php -S localhost:4000 -c app/config/php/ini
路由器腳本
內置服務器無法進行路由解析、轉發、重定向等,不支持.htaccess文件。因此很難使用多數流行的PHP框架中的常見的前端控制器。
使用路由器腳本彌補這個遺漏的功能。處理每個HTTP請求前,先執行這個路由器腳本。其作用跟.htaccess文件一樣。
php -S localhost:4000 router.php
路由器腳本 如對圖片的請求會返回相應的圖片,但對HTML文件的請求會顯示“Welcome to PHP”:
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is.
} else {
echo "<p>Welcome to PHP</p>";
}
?>
判斷是否為內置的服務器
<?php
if(php_sapi_name() === 'cli_server'){
//PHP內置服務器
}else{
//其他Web服務器
}
缺點:不能在生產環境使用,只能本地開發使用。
- 性能差。一次只能處理一個請求;
- 支持少量的媒體類型;
- 支持少量的URL重寫規則。