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


PHP集成開發環境有很多,如XAMPP、AppServ......只要一鍵安裝就把PHP環境給搭建好了。但這種安裝方式不夠靈活,軟件的自由組合不方便,同時也不利於學習。所以我還是喜歡手工搭建PHP開發環境,需要哪個模塊自己安裝就行了,或者那個軟件需要升級,直接升級那個軟件就行了,並不影響其他軟件,非常方便。

 

安裝環境:windowsXP 32

 

一、准備工作-下載所需軟件

  • 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/)

 

二、安裝軟件

1、安裝Apache

注意:Apache服務器的默認是80端口

雙擊安裝,與安裝其他Windows軟件沒有什么區別,在填Server Infomation時,並沒有特殊規定,只要輸入的信息符合格式即可。

服務器信息可以按照默認配置,如果服務器的80端口沒被其他服務器程序占據。可選“for All Users,on Port 80, as a Service—Recommended.”如果僅為當前用戶使用,使用8080端口,手動啟動,選擇“only for the Current User, on Port 8080, when started Manually.”。端口號是可以通過配置文件進行修改的。

安裝完成之后出現apache服務管理器,如下圖,點擊第一個圖標

(注意:安裝完apache后並沒有啟動此服務

服務管理列表中有現在可以啟動的服務項目,點擊“Start”

在瀏覽器輸入http://localhost,如果顯示It Works!,表示Apache安裝成功。

 

2、安裝php

將php-5.3.10-Win32-VC9-x86.zip解壓到一個目錄即可,本例我放置到了D:\php文件夾下。

 

3、安裝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安裝是否成功:

 

三、整合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

 

四、驗證安裝是否成功

配置完成,檢測一下配置是否成功。有兩種方法可以驗證。

第一種:重啟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合作愉快了。

 

 

五、安裝過程中遇到的問題

1、地址欄輸入http://localhost,顯示的IIS頁面

原因:IIS與apache默認端口號一樣,都是80

解決方法一:把IIS服務停止

解決方法二:修改Apache端口號

 

2、地址欄中輸入http://localhost,提示域名解析錯誤

原因:安裝后的apache並未啟動

解決方法:啟動后即可正常訪問。

 

3、啟動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的修復 

 

4、如果你Apache安裝后服務管理列表中沒有出現apache的服務項就說明在安裝過程中出現了錯誤,這時候可以手動進行安裝。

解決方法:使用cmd進入C:\Program Files\Apache Software Foundation\Apache2.2\bin這是我本機安裝的目錄, 並執行httpd -k install命令,提示成功后即可在服務管理列表中看到apache服務。

 

5、httpd.conf的配置時,若php目錄下無php5apache2_2.dll,一定是下載的版本不對

 

6、MySQL安裝有問題,需要重裝,重裝時變成無反應,裝不了

解決方法:可參考http://www.cnblogs.com/yangxia-test/p/4414397.html

 

7、啟動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 即可.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM