本帖參考了如下文章:http://apachewin7.jiaogen.com/2010/04/21/win7%E4%B8%8Bphp5-3apache2-2%E9%85%8D%E7%BD%AE/
http://www.umgr.com/Blog/PostView.aspx?bpId=67938
http://www.cnblogs.com/good_hans/archive/2010/04/01/1702059.html
(1)安裝並配置Apache(安裝到D:\MyPrograms\Apache)
安裝時預設安裝,Network Domain, Server Name 如果沒有的話可以使用localhost,Administrator's Email Address地區填你的郵件地址。以後可以在httpd.conf檔案中修改這些資訊。 Apache啟動後,用http://localhost/或http://127.0.0.1測試是否成功。成功的話螢幕會有個It works!
有關Apache的配置見下面內容。
(2)配置PHP(解壓PHP壓縮包到D:\MyPrograms\php\)
首先,對於PHP版本的說明: PHP版本:php-5.3.2-Win32-VC6-x86,VC9是專門為IIS定製的,VC6 是為了其他WEB服務軟體提供的,如 Apache。
將PHP解壓到一個非中文且不帶空格的路徑下(我用的是D:\MyPrograms\php\),詳細的安裝步驟在安裝文檔install.txt檔案中,由於是全E文的而且非常詳細,估計很多人不太有耐心將其看完,但是它真的很有用,本文後面會拿其做參考。
If you are installing PHP 5, extract to C:\php as the zip file doesn’t expand as in PHP 4. You may choose a different location but do not have spaces in the path (like C:\Program Files\PHP) as some web servers will crash if you do.
所以請再次確認解壓路徑不包含空格。
根據網上和大多數教材的說法需要將所有的dll檔案複製到系統檔案夾(%systemroot%\system32),我個人不是很喜歡這個做法。在install.txt中有這麼一段描述:
To make php5ts.dll available you have three options: copy the file to the Windows system directory, copy the file to the web server’s directory, or add your PHP directory, C:\php to the PATH. For better maintenance, we advise you to follow the last option, add C:\php to the PATH, because it will be simpler to upgrade PHP in the future. Read more about how to add your PHP directory to PATH in the corresponding FAQ entry (and then don’t forget to restart the computer – logoff isn’t enough).
所以為了今後升級和維護的方便,最好的方法是將PHP的解壓路徑(如D:\MyPrograms\php\)加入PATH環境變數,然後reboot。
PHP在解壓路徑存放有兩個檔案 php.ini-development 和 php.ini-production,雖然install.txt強烈建議標準伺服器使用後者,但是對於開發而言還是適合使用php.ini- development,將其備份後改名為php.ini,用文字編輯器將其開啟。
首先尋找extension_dir,它用於指定PHP擴充dll的位置,根據注釋可以將On windows下的那一行改成
extension_dir = “D:\MyPrograms\php\ext”
然後尋找doc_root,它用於指定Web伺服器的根路徑, 將其改成
doc_root = “D:\MyPrograms\php\Apache\htdocs” ; 如果之後要改變根路徑則可以填入新的根路徑
之後選擇運行一些PHP必須的擴充,尋找extension,將下面幾個extension前的注釋分號去掉
extension=php_gd2.dll
extension=php_imap.dll
extension=php_mysql.dll ; 使用MySQL必需
extension=php_mysqli.dll ; 使用MySQL必需
然後儲存,關閉php.ini。
==== 配置 Apache ====
首先檢查PHP解壓路徑下有沒有一個php5apache2_2.dll檔案(如果沒有則表明你選錯了php壓縮包的版本),然後在Apache的安裝目錄下的conf目錄中用文字編輯器開啟httpd.conf檔案,尋找一下LoadModule下是否已經有下面的 幾句,如果沒有,在所有LoadModule的下面加入以下幾句
LoadModule php5_module D:/MyPrograms/PHP/php5apache2_2.dll # 載入php模組
PHPIniDir “D:/MyPrograms/PHP” # 指定php.ini的路徑
AddType application/x-httpd-php .php # 允許php文法在.php檔案中使用
AddType application/x-httpd-php .html # 允許php文法在.html檔案中使用,此處,“你可以使用任何副檔名,有些使用者使用PHP時喜歡用.html副檔名,要記住,這樣最終會導致一個後果,每次請求HTML檔案時都會把檔案交由PHP解析。“(引自《PHP與MySQL5程式設計》),因此不建議把這句也加上。
(以上#和後面的提示有時候會引起apache服務不能啟動的問題,最好吧注釋去掉。)
如果需要改變Web根路徑,可以尋找DocumentRoot,將相關行修改:
DocumentRoot “D:/MyPrograms/Apache/htdocs”
同時必須在以下地方進行相應修改:
<Directory “D:/MyPrograms/Apache/htdocs”>
接下尋找DirectoryIndex,此處用於指定url為一目錄時預設載入檔案的順序,通常為index.php,index.html, 等等,針對php可以採用如下的設定:
DirectoryIndex index.php index.html default.php default.html
注意檔案名稱的中間用空格隔開。
如果需要修改連接埠,尋找listen 修改後邊的數值
儲存並關閉httpd.conf,雙擊Apache的托盤表徵圖開啟介面,點擊Restart重啟Apache。
之後我們就可以測試PHP是否正常工作了,在Web根路徑(預設為Apache安裝目錄的htdocs)下建立一個test.php檔案,添加以下一行內容
<?php phpinfo(); ?>
儲存退出。在瀏覽器輸入http://localhost/test.php,如果有詳細php的配置資訊顯示,說明配置成功