TestLink學習一:Windows搭建Apache+MySQL+PHP環境

PHP集成開發環境有不少,如XAMPP、AppServ......只要一鍵安裝就把PHP環境給搭建好了。但這種安裝方式不夠靈活,軟件的自由組合不方便,同時也不利於學習。因此我仍是喜歡手工搭建PHP開發環境,須要哪一個模塊本身安裝就好了,或者那個軟件須要升級,直接升級那個軟件就好了,並不影響其餘軟件,很是方便。php

 

安裝環境:windowsXP 32html

 

1、準備工做-下載所需軟件mysql

  • Apache  httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
  • PHP       php-5.3.10-Win32-VC9-x86.zip
  • MySQL   mysql-5.5.28-win32.zip

 (下載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 便可.

相關文章
相關標籤/搜索