在windows環境下架設網頁伺服器(AppServ套件安裝)由於AppServ已將PHP、MySQL、Apache整合成獨立的安裝檔,只需要進行一次安裝,就可以把3個部份都安裝。安裝步驟如下:1.可於AppServ的官方網站()下載AppServ2.5.x版。2.當下載完成後,請按appserv-win32-2.5.7.exe檔案上連按兩下,執行該安裝檔案。當出現圖1所示進入安裝程式。請點選「Next」繼續安裝步驟。圖13.如圖2所示同意安裝的的說明規範,按下「IAgree」繼續安裝。圖24.如圖3所示決定安裝目錄,以下對話方塊的目的就是決定要安裝的目錄位置,預設是使用「C:\AppServ」,如果要設定為其他目錄,可以直接修改或按下「Browse..」按鈕。決定好之後,按下「Next」按鈕進行下一步驟。圖35.設定好安裝目錄後,接下來就是要決定安裝套件的模式,如圖4所示將所有下列模式全部勾選安裝,按下「Next」按鈕進行下一步驟。圖46.如圖5所示由於安裝電腦沒有網域名稱,因此可以在ServerName填入IP(在這填入localhost),而Administrator’sEmailAddress則填入你可以收到信件的電子郵件即可,最後HTTPPort通常使用80,因為這是標準號碼所以請避免任意修改。設定完成後,按下「Next」按鈕進行下一步驟。圖57.MySQL選項設定如圖6所示,主要是用來設定進入MySQL資料庫管理系統上的密碼,請自行在Enterrootpassword與Re-enterrootpassword設定自己喜歡的密碼(在這設123456),CharacterSetsandCollations該選項設定MySQL所要支援的語系,如果要設定繁體中文請點選Big5TraditionalChinese,其勾取選項請使用預設值,接下來按下「Install」按鈕開始進行安裝。圖6------------------------------------------------------------------------------------8.修改php.ini設定檔請點選開始-所有程式-AppServ-configurationServer-PHPEditthephp.iniConfigurationFile,如圖7所示將register_globals=Off改成register_globals=On。圖79.至JpGraph的官方網站()下載JpGraph函式庫,請下載PHP5版本((究極PHP,P14-3),下載後解壓縮該名稱為jp將目錄放置在C:\下。10.進入mysql建立資料庫:請點選開始-所有程式-AppServ-MySQLCommandLineClient,此時跳出圖8所示圖8如圖2所示,請輸入當初設定MySQL密碼(123456)輸入正確後,建立名稱為factory的資料庫:#mysqlcreatedatabasefactory;輸入下列指令可查看資料庫是否建立成功。(PHP5,P13-28)#mysqlshowdatabases;圖911.完成MySQL資料庫、PHP或Apache2上的設定檔案,記得需重新啟動Apache2。請點選開始-所有程式-AppServ-ControlServerByService-ApacheRestart。12.請將設計完成的phpfile放置在自動產生的C:\AppServ\目錄下。13.由於進入AppServ的MySQL需輸入密碼方可登入MySQL資料庫系統,請更改所有在PHP程式內使用mysql_connect()資料庫連結指令,請加入第3個參數(自行設定的密碼)例如:mysql_connect(localhost,root,'123456')。14.由於執行socket.php需要一暫存檔tmp.txt,請將它設置於C:/socket/tmp.txt下(自建soket目錄)。15.由於JpGraph模組建置在C:\下,請更改bar.php和pie.php程式中require指令的jpgraph.php路徑:。例如:require(C:\jp\src\jpgraph.php);。在AppServ上所能承受最大的預設客戶端連線值為150,若需更改連線數量請點選開始-所有程式-AppServ-configurationServer-ApacheEditthehttp.confconfigurationFile,如下圖10所示(請參考上奇Unbuntu完全手冊14-4)。圖10圖11所示為Linux下的socket.php程式碼,傳送數據資料的程式語法如反白部分,是經由設定旗標與傳送STOP字串作為結束。圖11如圖12所示,因在ARM自動建檔下的數據資料檔最後一字元為空字串(null)。若傳送檔案結束後,以傳送STOP字串為作為結尾,會造成PHP程式中socket_read指令接收上的誤動作。圖12因此在socket.php程式中第46行,以讀取到空字串做為while迴圈的結束,代表單一檔案接收結束,如圖13反白的部份所示。