PHP 5.4內置Web服務器:簡化開發與測試
PHP 5.4版本引入了一個內置Web服務器,專為開發和測試而設計,允許開發者在無需完整LAMP配置的情況下編寫和測試代碼。此服務器還可用於在CD-ROM、U盤或作為桌面應用程序分發便攜式Web應用程序。
關鍵要點:
index.php
文件並從命令行啟動服務器來測試服務器。服務器可在本地機器、機器的任何接口或特定IP地址訪問。 許多人認為PHP本身就是為Web設計的語言,而Python和Ruby等其他語言並非如此,因此為其他語言提供基本的服務器環境來幫助啟動Web開發更有意義。他們會爭辯說PHP不需要內置服務器。此外,如今大多數係統都已預裝了個人Web服務器,或者可以通過幾個命令或點擊安裝。事實上,PHP手冊強調新的內置服務器僅用於開髮用途,並建議不要在生產環境中使用它。除了一個(為控制台發送的日誌輸出著色)之外,沒有針對它的特殊INI指令,文檔的總體基調似乎是“我們現在也有一個Web服務器了,別再煩我們了”。儘管如此,該服務器仍在5.4版中實現,我認為它對於開發和測試都是很有價值的工具。例如,在我的機器上,我使用OSX預安裝的Apache,並使用適合我開發風格的自定義配置,但有時我想嘗試一些新的Web應用程序。使用PHP的內置服務器,我可以直接從我的下載或臨時目錄測試應用程序,然後只有在我真正需要時才將其移動到我的常規環境。好吧,一開始並不那麼簡單,因為許多應用程序都是針對Apache編寫的,並使用了.htaccess
文件和mod_rewrite
。但我確信,有人(也許是你們中的一個,為什麼不呢?)會為此功能編寫適配器,我想成為第一個測試它的人。在本文中,我將解釋新內置服務器的一些基本用法,並向您展示如何構建一個便攜式個人開發服務器,該服務器可用於快速測試您的應用程序。我相信您和我一樣渴望開始,所以讓我們開始吧!
使用內置服務器
您需要安裝PHP 5.4或更高版本才能使用內置服務器。要驗證您的PHP版本,請在終端中調用php -v
。然後,您可以通過運行php -h
並查找特定於服務器的-S
和-t
選項來確定您的版本中是否可用該服務器。您可以通過在當前目錄中創建一個包含對phpinfo()
的調用的基本index.php
文件來測試服務器,然後像這樣啟動服務器:
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8080</localhost></code>
在您的瀏覽器中,您現在應該能夠看到內置服務器提供的內容。
每次客戶端訪問都會在控制台窗口寫入一個新的日誌行:
<code>[Sun Feb 26 18:55:30 2012] 80.180.55.37:36318 [200]: / [Sun Feb 26 18:56:23 2012] 80.180.55.37:36584 [200]: /</code>
回顧PHP的命令行選項,-S
用於指定服務器將綁定到的地址。其值可以是:
localhost
– 服務器僅可在本地機器訪問0.0.0.0
– 服務器可從機器的任何接口(有線或無線)訪問-t
允許您告訴服務器將其文檔根目錄定位到另一個目錄。例如:
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8090 -t /home/ec2-user/public</localhost></code>
或者,您還可以提供特定PHP文件的名稱,例如index.php
或router.php
文件。
<code class="language-bash">[ec2-user@ip-10-229-67-156 ~]$ php -S <localhost>:8080 -t /home/ec2-user/public public/index.php</localhost></code>
此類路由腳本的輸出將由服務器解析和執行。
...(以下內容與原文類似,但對語句結構、詞彙和表達方式進行了調整,保持了原文意思不變)...
(剩餘部分類似處理,將原文段落進行偽原創,保持圖片位置和格式不變)
以上是利用PHP的內置服務器的詳細內容。更多資訊請關注PHP中文網其他相關文章!