在Windows下成功安裝PHP是毫無懸念的,但同時也是需要一些運氣的。本文記錄了一次成功安裝的過程,希望對大家能有所幫助。本文安裝的環(huán)境為Windows
7 Ultimate English version + Apache Http Server 2.2.15 + PHP 5.3.2。
1. 安裝Apache Http Server
Apache Http
Server 2.2.15可以從Apache官方網(wǎng)站下載:
http://httpd.apache.org/download.cgi
下載下來的msi文件直接雙擊安裝即可。
2. 安裝PHP 5.3.2
本次安裝使用的是PHP的壓縮文件版本,具體來說是: php-5.3.2-Win32-VC9-x86。可以從http://windows.php.net/download/
下載得到。下載其它版本的時候,需要注意的是,必須要包含php5apache2_2.dll,否則的話,下載下來的文件是無法配置的。就目前PHP官方網(wǎng)站提供的各個版本:
·
php-5.3.2-nts-Win32-VC9-x86.zip 不包含php5apache2_2.dll。PHP不想繼續(xù)支持非線程安全(non-threadsafe)的版本了?
·
php-5.2.13-nts-Win32-VC6-x86.zip 包含php5apache2_2.dll,但安裝下來無法使用。
由于下載的是壓縮文件版本, 解壓到某個文件夾即可。這個地址在本文將被應(yīng)用為PHP5_HOME。
3. 配置
3.1 配置Apache Server使其支持PHP5
編輯Apache
Server目錄下的conf/httpd.conf文件,加入以下指令(建議加載最后一個LoadModule指令后):
LoadModule
php5_module "PHP5_HOME\php5apache2_2.dll" #注意, PHP5_HOME必須按照安裝環(huán)境展開, 例如: # LoadModule
php5_module " E:\development\php\php-5.3.2-Win32-VC9-x86\php5apache2_2.dll" #總之, PHP5_HOME\php5apache2_2.dll必須指向PHP的安裝目錄下的php5apache2_2.dll文件 <IfModule
php5_module> #對于.php的請求, 我們要將其MIME設(shè)置為application/x-httpd-php, 不然會直接返回php文件的內(nèi)容 AddType application/x-httpd-php .php </IfModule> |
3.2 配置PHP5
1). php.ini文件
檢查PHP5_HOME文件夾, 你會發(fā)現(xiàn)php.ini-development和php.ini-production, 將其中一個重命名為php.ini(不放心后續(xù)的話,請備份文件)。php.ini需要修改的地方有:
·
extension_dir
;
Directory in which the loadable extensions (modules) reside. ;
http://php.net/extension-dir ; extension_dir
= "./" ; On
windows: extension_dir = "PHP5_HOME/ext" ; 與前面類似, PHP5_HOME需要展開 ; extension_dir = " E:/development/php/php-5.3.2-Win32-VC9-x86/ext" |
注意,
extension_dir必須使用絕對路徑, 如果按照php.ini提示的那樣使用extension_dir="ext", 是不能找到extensions的。
·
根據(jù)需要啟用extension
比如要啟用mysql擴展, 直接打開前面的注釋符號即可:
;
extension=php_mysql.dll
----->
extension=php_mysql.dll
2). 其實此時可以開啟Apache Server測試了
利用下面的腳本, 可以看到當前PHP的配置情況:
<?php echo phpinfo(); |
將這個文件放在Apache Server下的hotdocs目錄中,然后通過瀏覽器訪問即可。但是,
這時候你會看到:
Configuration File (php.ini) Path C:\windows
Loaded
Configuration File
(none)
由此可見,php.ini文件實際上是從C:\windows下加載的,不出意外的話,C:\windows\php.ini文件是不存在的(在這種情況下, PHP實際上使用的是一些缺省的配置)。為了解決這個問題,有兩種方法:
1). 將配置php.ini移到C:\Windows。這種方法自然有效,但不利于擴展,也干得不漂亮;
2).修改注冊表--添加HKEY_LOCAL_MACHINE\SOFTWARE\PHP,然后在其下添加key-value對:
Key: IniFilePath
value: PHP5_HOME
重新啟動Apache, 并檢測環(huán)境,
應(yīng)該可以看到Loaded Configuration File會有所變化。
Ps: 如果Apache出錯的話,
將記錄在Apache Server下的logs/error.log文件中。