PHP集成開發環境有不少,如XAMPP、AppServ......只要一鍵安裝就把PHP環境給搭建好了。但這種安裝方式不夠靈活,軟件的自由組合不方便,同時也不利於學習。因此我仍是喜歡手工搭建PHP開發環境,須要哪一個模塊本身安裝就好了,或者那個軟件須要升級,直接升級那個軟件就好了,並不影響其餘軟件,很是方便。php
安裝環境:windowsXP 32html
1、準備工做-下載所需軟件mysql
(下載php網站:http://tool.php100.com/)ios
2、安裝軟件web
一、安裝Apachesql
注意:Apache服務器的默認是80端口數據庫
雙擊安裝,與安裝其餘Windows軟件沒有什麼區別,在填Server Infomation時,並無特殊規定,只要輸入的信息符合格式便可。apache
服務器信息能夠按照默認配置,若是服務器的80端口沒被其餘服務器程序佔據。可選「for All Users,on Port 80, as a Service—Recommended.」若是僅爲當前用戶使用,使用8080端口,手動啓動,選擇「only for the Current User, on Port 8080, when started Manually.」。端口號是能夠經過配置文件進行修改的。windows
安裝完成以後出現apache服務管理器,以下圖,點擊第一個圖標瀏覽器
(注意:安裝完apache後並無啓動此服務)
服務管理列表中有如今能夠啓動的服務項目,點擊「Start」
在瀏覽器輸入http://localhost,若是顯示It Works!,表示Apache安裝成功。
二、安裝php
將php-5.3.10-Win32-VC9-x86.zip解壓到一個目錄便可,本例我放置到了D:\php文件夾下。
三、安裝MySQL
雙擊安裝,若是須要更改安裝目錄,則在Choose Setup Type選擇Custom
此處選擇用戶自定義配置
能夠更改mysql的安裝目錄位置,此處保持默認。
完成後勾選」Launch the MySql instance Configuration Wizard」進行MySql的配置。
安裝完成後開始配置MySQL,所有保持默認選項便可,但最好把MySQL默認編碼改成utf8,在Modify Security Settings選項中設置密碼,輸入兩次密碼便可完成,最後點Execute完成配置。
選擇配置方式:「Detailed Configuration(手動精確配置)」、」Standard Configuration(標準配置)」,選擇「Detailed Configuration」,
選擇服務器類型,「Developer Machine(開發測試類,mysql佔用不多資源)」、「Server Machine(服務器類型,mysql佔用較多資源)」、「Dedicated MySQL Server Machine(專門的數據庫服務器,mysql佔用全部可用資源)」,通常選擇「Server Machine」。 可根據實際狀況進行選擇。本例使用開發測試類型滴。
選擇mysql數據庫的大體用途,「Multifunctional Database(通用多功能型,好)」、「Transactional Database Only(服務器類型,專一於事務處理,通常)」、「Non-Transactional Database Only(非事務處理型,較簡單,主要作一些監控,記數用,對MySAM數據類型的支持僅限於non-transactional)」,選擇「Transactional Database Only」,本例選擇的是通用多功能型。
對InnoDB Tablespace進行配置,就是爲InnoDB數據庫文件選擇一個存儲空間,若是修改了,要記住位置,重裝的時候要選擇同樣的地方,不然可能會形成數據庫損壞,固然,對數據庫作個備份就沒問題了。使用默認位置。
選擇網站的一半mysql訪問量,同時鏈接的數目,「Decision Support(DSS)/OLAP(20個左右)」、「Online Transaction Processing(OLTP)(500個左右)」、「Manual Setting(手動設置,本身輸一個數)」,選擇「Online Transaction Processing(OLTP)」。本例選擇第一項,因爲只在本機作開發測試工做。
是否啓用TCP/IP鏈接,設定端口,若是不啓用,就只能在本身的機器上訪問mysql數據庫,選擇「Enable TCP/IP Networking」是否啓用TCP/IP鏈接,設定端口,若是不啓用,就只能在本身的機器上訪問mysql數據庫,選擇「Enable TCP/IP Networking」。
設置數據庫語言編碼,「Standard Character Set」爲西文編碼、「Best Support For Multilingualism」爲RTF-8編碼、「Manual Selected Default Character Set/Collation」爲手動設置編碼,utf8
」Install As Windows Service」選擇安裝MySql服務,可自定義服務的名稱。
「Include Bin Directory in Windows PATH」是在機器上添加MySql的環境變量。
選擇「Modify Security Settings」,可根據實際要求勾選上「Enable root access from remote machines」以便可以從其餘機器上訪問。
完成配置後點擊「Execute」執行配置便可。
MySQL安裝完成了。
測試MySQL安裝是否成功:
3、整合Apache+PHP+MySQL
Apache : 首先修改Apache的配置文件,讓Apache支持解析PHP文件。Apache配置文件在Apache安裝目錄的conf目錄下的httpd.conf。
1. 讓Apache能夠解析php文件,在配置文件中找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
在下一行添加 (綠色的位置是根據PHP的所在目錄而定的)
LoadModule php5_module "D:/php/php5apache2_2.dll"
PHPIniDir "D:/php"
AddType application/x-httpd-php .php .html .htm
2. 在配置文件中找到
DirectoryIndex index.html
改成
DirectoryIndex index.php index.html
3. 修改Apache站點目錄,在配置文件中找到(Apache安裝的目錄不一樣,顯示的值不同)
#DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"
改成
DocumentRoot "D:/php"
再找到
#<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
改成
<Directory "D:/php">
PHP : 把php.ini-development更名爲php.ini,做爲PHP的配置文件。修改php.ini
1. 設置PHP擴展包的具體目錄,找到
; On windows:
; extension_dir = "ext"
改成 (值是ext文件夾的目錄)
; On windows:
extension_dir = "D:/php/ext"
2. 開啓相應的庫功能,找到須要開啓的庫的所在行
;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mbstring.dll
;extension=php_mysql.dll
;extension=php_xmlrpc.dll
去掉前面的分號(註釋),即改成
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_xmlrpc.dll
3. 設置時區,找到
;date.timezone =
改成
date.timezone = Asia/Shanghai
4、驗證安裝是否成功
配置完成,檢測一下配置是否成功。有兩種方法能夠驗證。
第一種:重啓Apache,在站點目錄下新建文件index.php,輸入內容:
<?php phpinfo(); ?>
打開瀏覽器輸入http://localhost,顯示以下內容,則安裝成功,而且成功關聯MySQL。
第二種:在Web根目錄下(如 D:\website)創建testdb.php文件內容以下:
<?php
$link=mysql_connect('localhost','root','123456'); if(!$link) echo "fail"; else echo "success"; mysql_close(); ?>
注意更改鏈接數據庫的地址和root的密碼。
用瀏覽器打開http://localhost/testdb.php 若是輸出success就表示PHP、mysql 和apache合做愉快了。
5、安裝過程當中遇到的問題
一、地址欄輸入http://localhost,顯示的IIS頁面
緣由:IIS與apache默認端口號同樣,都是80
解決方法一:把IIS服務中止
解決方法二:修改Apache端口號
二、地址欄中輸入http://localhost,提示域名解析錯誤
緣由:安裝後的apache並未啓動
解決方法:啓動後便可正常訪問。
三、啓動Apache時報錯the requested operation has failed
緣由一:80端口占用
例如IIS,另外就是迅雷。個人apache服務器就是被迅雷害得沒法啓用!
Windows平臺查看誰佔用了咱們的80端口方法:
在windows命令行窗口下執行:
C:\>netstat -aon|findstr "80" TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448 看到了嗎,端口被進程號爲2448的進程佔用,繼續執行下面命令: C:\>tasklist|findstr "2448" thread.exe 2016 Console 0 16,064 K 很清楚吧,thread佔用了你的端口,Kill it 若是第二步查不到,那就開任務管理器,看哪一個進程是2448,而後殺之便可。 若是須要查看其餘端口。把 80 改掉便可
緣由二:軟件衝突
裝了某些軟件會使apache沒法啓動如Dr.com 你打開網絡鏈接->TcpIp屬性->高級->WINS標籤 把netbios的lmhosts對勾去掉,禁用tcp/ip的netbios. 而後再啓動應該就能夠了。
緣由三:httpd.conf配置錯誤
若是apache的配置文件httpd.conf搞錯了,在windows裏啓動它,會提示the requested operation has failed ,這是比較鬱悶的事,由於查錯要看個半天。
其實能夠用命令行模式啓動apache,並帶上參數,apache會提示你哪句有誤,而後就能夠針對性的解決,命令以下: httpd.exe -w -n "Apache2" -k start
還有一種狀況:
即便你此次啓動了,下次你都有可能啓動失敗
在運行裏輸入:netsh winsock reset
一下子cmd會提示你重啓,不用理會,如今APACHE已經能夠啓動了。
其實就是一個winsock的修復
四、若是你Apache安裝後服務管理列表中沒有出現apache的服務項就說明在安裝過程當中出現了錯誤,這時候能夠手動進行安裝。
解決方法:使用cmd進入C:\Program Files\Apache Software Foundation\Apache2.2\bin這是我本機安裝的目錄, 並執行httpd -k install命令,提示成功後便可在服務管理列表中看到apache服務。
五、httpd.conf的配置時,若php目錄下無php5apache2_2.dll,必定是下載的版本不對。
六、MySQL安裝有問題,須要重裝,重裝時變成無反應,裝不了
解決方法:可參考http://www.cnblogs.com/yangxia-test/p/4414397.html
七、啓動Apache時,提示php startup
解決思路:cmd命令中,輸入httpd.exe -w -n "Apache2" -k start ,查看Apache日誌,顯示如下錯
apache雖然能運行,可是看見error.log中有httpd.exe: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName這個錯誤
解決方法:由於DNS沒配置好. 若是不想配置DNS, 就在httpd.conf , 在最前加入 ServerName localhost:80 便可.