Windows XP平台下搭建PHP環境
剛接觸PHP那會兒,覺得搭建PHP的運行環境實在是太難,後來發現有現成的套裝軟體可用,高興的不得了。最開始因為想建站,所以接觸到了DedeCMS,織夢公司還蠻體貼,提供了一個和DedeCMS配套使用的PHP環境搭建套裝軟體。後來,又接觸過像XAMPP,AppServ等軟體,AppServ現在還在用。雖然這類套裝軟體十分好用,但是也存在明顯的不足。套裝軟體裡麵包含軟體的版本都是固定的,而且套裝軟體升級速度相當的慢,反觀PHP的開發又是相當快速的,所以使用套裝軟體會造成新加入的PHP特性無法在當前環境下使用的問題。
?
隨著對PHP的越來越熟悉,大致也知道了PHP指令碼被解析的過程,所以有信心一步一步來搭建PHP運行環境。事先認為這事不會有什麼難度,但在搭建過程中,還是碰到了一些問題,花費了一些時間。鑒於此,將搭建過程整理出來,貼在這裡,以備日後參考。
?
第一步:準備工具
- 文字編輯器,如:EditPlus等。
- Web伺服器,選擇常用的Apache,如:httpd-2.0.64。
- DB伺服器,如:MySQL-5.5.28。
- 已編譯PHP,如:PHP-5.3.1。因為使用ISAPI的模式運行PHP,所以選擇VC6安全執行緒版本。
第二步:開始安裝
1,安裝Apache
這個沒什麼好說的,一路next下去。有一點需要注意,最好選擇custom的方式進行安裝,這樣可以將Apache安裝目錄存放在指定目錄。完成後,進行簡單測試。可以將一個網頁檔案(副檔名為html)或任何其它檔案放在安裝目錄下的htdocs下,這是Web伺服器預設的主目錄。開啟瀏覽器,在地址欄中輸入:127.0.0.1或localhost,斷行符號。如果能看到剛才建立的檔案,說明Web伺服器已正常啟動。
2,安裝PHP
為了將PHP納入Apache的控制之下,需要完成如下工作。首先,將編譯過的PHP目錄檔案放在與Apache安裝目錄同級的目錄下,這時候Apache還不知道PHP的存在。接著,進入Apache安裝目錄下,在目錄conf下找到httpd.conf檔案,這是Apache的設定檔。用Editplus開啟該檔案,在LoadModule部分最後,加入兩行內容。大致形式為:
LoadModule php5_module D:/localhost/php5/php5apache2.dllPHPIniDir "D:/localhost/php5/php.ini"
第一行表示PHP作為Apache的一個模組被使用,第二行表示PHP設定檔的絕對路徑。需要說明兩點:一是,第一行中php5apache2.dll檔案由Apache的版本決定,這裡因為Apache的版本是2.0.*,所以載入php5apache2.dll檔案。如果使用2.2.*系列,則應該載入php5apache2_2.dll檔案。二是,第二行中的php.ini檔案在PHP目錄中是沒有的,只有php.ini-development和php.ini-production這兩個檔案,需要將其中之一重新命名為php.ini,建議選擇production版本,保證線上線下一致性。接著,為了告訴Apache應該將何種類型的檔案交給Zend Engine解析,需要為這類檔案指定一個特定副檔名。在檔案最後,加入如下命令:
AddType application/x-httpd-php .php
然後開啟php.ini,需要修改幾處配置。找到“; extension_dir = "ext"”這一行配置,這裡是PHP擴充的路徑,去掉注釋符號“;”,然後填寫正確路徑就好了,如:extension_dir = "D:/localhost/php5/ext"。接著,找到如下兩行命令:
;extension=php_mysql.dll;extension=php_mysqli.dll
去掉前面的分號,儲存檔案,重啟Apache。不出意外,這時PHP就能用了。為了測試,這時可以在htdocs目錄下建立副檔名為php的檔案,通過瀏覽器訪問該檔案,看檔案是否被成功解析。
3,安裝MySQL
一路next,使用自訂安裝(即:custom),將MySQL安裝目錄放在與Apache和PHP同級目錄。有一個地方需注意,如果本地在之前安裝過MySQL,那麼會有一些資料被寫入註冊表,即使卸載MySQL時,這些資訊也不會被刪除,這樣當重新安裝MySQL時,就會出錯。因此,在安裝MySQL前,首先確保註冊表裡沒有殘留的MySQL資訊,這些資訊大致在以下三處:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQLHKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQLHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL
如果存在,將它們刪除即可。
第三步:使Apache和MySQL全域可用
為了方便在DOS下使用Apache和MySQL,可以將Apache和MySQL安裝目錄下的二進位目錄路徑加入到系統變數Path中。具體操作為:我的電腦->屬性->進階->環境變數->選中系統變數Path->編輯->加入Apache和MySQL下二進位目錄的絕對路徑(注意用分號隔開)->儲存。完成後(不需重啟電腦),即可在DOS下直接運行Apache和MySQL安裝目錄下二進位目錄下的可執行檔了。
第四步:修改設定檔
為了使PHP程式的效能最優,常常需要根據具體的項目要求,對開發環境做一些配置層面的最佳化。PHP環境中有兩個最重要的設定檔,一個是php.ini,另一個是httpd.conf。前者是PHP的全域設定檔,用來控制PHP的行為,後者是Apache的設定檔,控制伺服器的表現。例如:Web伺服器預設文件根目錄位於Apache安裝目錄下htdocs目錄下,為了便於開發和維護,常常需要將此配置成和Apache,MySQL及PHP同級目錄中的某一目錄,如www目錄。為了完成這個工作,需要修改httpd.conf檔案,找到“DocumentRoot "C:/AppServ/Apache2/htdocs"”這一行命令,將其修改為“DocumentRoot "C:/AppServ/www"”,儲存檔案,重啟伺服器即可。
(完)
?