《APMServ 5.1.2》使用圖解
更新時間:2006年10月23日 00:00:00 作者:
《APMServ 5.1.2》使用圖解
1、下載APMServ5.1.2.rar并解壓縮![]() 2、打開APMServ5.1.2主程序APMServ.exe ![]() 3、虛擬主機(jī)配置(看不清可點擊放大) ![]() 4、虛擬目錄配置(看不清可點擊放大) |

1、問:如何將舊版本的《APMServ 5.0.4增強(qiáng)版》中的網(wǎng)頁和數(shù)據(jù)庫資料遷移到《APMServ 5.1.2》中?
答:將《APMServ 5.1.2》解壓縮到另外一個目錄,如果舊版本的《APMServ 5.0.4增強(qiáng)版》處于啟動狀態(tài),先點擊舊版APMServ.exe中的停止按鈕,然后將舊版本www網(wǎng)頁目錄下的除phpmyadmin目錄以外的目錄文件全部復(fù)制到5.1.2版的www\htdocs目錄下,將舊版本MySQL\data數(shù)據(jù)庫目錄下的目錄文件全部復(fù)制到5.1.2版的MySQL4.0\data目錄下,確認(rèn)在5.1.2版中能夠正常訪問這些網(wǎng)頁和數(shù)據(jù)庫后,刪除舊版本目錄即可。
2、問:“80、443端口被占用,Apache2無法啟動?!笔窃趺椿厥??
答:如果您裝有IIS或其它HTTP服務(wù)器軟件并啟動,將占用80端口(如果IIS開啟SSL支持,還會占用443端口),可以將IIS更改一個端口,或者在APMServ中更改Apache的端口。
3、問:為什么啟動APMServ后,但在Windows的服務(wù)列表中沒有“Apache2”一項或“Apache2”處于停止?fàn)顟B(tài)?
答:請不要將APMServ放在含有中文的路徑中,因為以服務(wù)模式啟動的Apache不支持中文目錄,例如“D:\網(wǎng)站服務(wù)器\APMServ\”會導(dǎo)致Apache無法啟動。同理,添加虛擬主機(jī)、虛擬目錄時,路徑中也不能含有中文。
4、問:我用MySQL5.1新建數(shù)據(jù)庫和導(dǎo)入原來MySQL4.0.x的數(shù)據(jù)全是亂碼,就像這樣“?????????????????????”,全是問號,如何解決?
答:從MySQL4.1版本開始,MySQL增加對多國語言、多字符集的支持,APMServ使用了中文字符集GBK。而舊的MySQL4.0.x、MySQL3.x版本一般默認(rèn)的字符集是latin1,以latin1編碼進(jìn)行儲存,由于只支持單字符集,以非中文編碼的latin1編碼保存中文數(shù)據(jù)并不會出現(xiàn)亂碼。
舊MySQL4.0.x數(shù)據(jù)導(dǎo)入MySQL4.1.x或5.x等支持多字符集的MySQL高版本數(shù)據(jù)庫后,非中文編碼的latin1編碼保存的數(shù)據(jù)就會顯示成“??????????????”。解決方法有很種,你可以在百度、Google搜索“MySQL4.1 字符集”或“MySQL5 字符集”了解相關(guān)資料。這里給你一種簡便的方法,打開PHP程序中負(fù)責(zé)連接MySQL數(shù)據(jù)庫的文件(例如conn.php),增加一行mysql_query('set character set GBK');即可。例如:
$conn=mysql_connect ("127.0.0.1", "root", "");
mysql_select_db("database"); //database是數(shù)據(jù)庫名
mysql_query('set character set GBK');
附:Discuz!官方論壇有一篇針對Discuz!用戶的“關(guān)于轉(zhuǎn)換或者升級以后出現(xiàn)亂碼情況的說明”,對MySQL4.1及更高版本的字符集問題有詳細(xì)地介紹,你可以參考一下。
http://www.discuz.net/viewthread.php?tid=201826
5、問:為什么服務(wù)器在連續(xù)運(yùn)行多天后或訪問峰值后,進(jìn)程中的一個Apache.exe占用內(nèi)存上百兆不減少?
答:用記事本打開apache2\conf\httpd.conf,查找MaxRequestsPerChild,將MaxRequestsPerChild 0改成MaxRequestsPerChild 50即可?! ?BR> 通常在“Windows任務(wù)管理器-進(jìn)程”中可以看到兩個apache.exe進(jìn)程,一個是父進(jìn)程、一個是子進(jìn)程,父進(jìn)程接到訪問請求后,將請求交由子進(jìn)程處理。MaxRequestsPerChild這個指令設(shè)定一個獨立的子進(jìn)程將能處理的請求數(shù)量。在處理“MaxRequestsPerChild 數(shù)字”個請求之后,子進(jìn)程將會被父進(jìn)程終止,這時候子進(jìn)程占用的內(nèi)存就會釋放,如果再有訪問請求,父進(jìn)程會重新產(chǎn)生子進(jìn)程進(jìn)行處理。
如果MaxRequestsPerChild缺省設(shè)為0(無限)或較大的數(shù)字(例如10000以上)可以使每個子進(jìn)程處理更多的請求,不會因為不斷終止、啟動子進(jìn)程降低訪問效率,但MaxRequestsPerChild設(shè)置為0時,如果占用了200~300M內(nèi)存,即使負(fù)載下來時占用的內(nèi)存也不會減少。內(nèi)存較大的服務(wù)器可以設(shè)置為0或較大的數(shù)字。內(nèi)存較小的服務(wù)器不妨設(shè)置成30、50、100,以防內(nèi)存溢出。
6、問:為什么某些在老版本PHP中編寫的PHP程序,在APMServ中不能傳遞變量?
答:PHP開發(fā)組基于安全性考慮,get、post、session在PHP 4.2.0以及后續(xù)版本中,自動全局變量默認(rèn)是關(guān)閉的,所以要從上一頁面取得提交過來得變量要使用$_GET['foo']、$_POST['foo']、$_SESSION['foo']來得到,而在之前的PHP版本中直接就可以取得變量。這就造成了某些在舊版本PHP中編寫的PHP程序,在新版本PHP中不能傳遞變量(APMServ 5.1.2中的PHP版本為最新的5.1.2)。
當(dāng)然您也可以修改自動全局變量為開(用記事本打開APMServ\PHP\php.ini-dist,修改register_globals=Off為register_globals=On)。考慮到安全性與兼容性,還是強(qiáng)迫自己按照PHP新版本的要求,熟悉新的寫法比較好。
《PHP手冊》自動全局變量的相關(guān)說明請見:
http://cn.php.net/manual/zh/language.variables.predefined.php
《PHP手冊》打開自動全局變量可能導(dǎo)致的安全性問題請見:
http://cn.php.net/manual/zh/security.globals.php
相關(guān)文章
利用php來自動調(diào)用不同服務(wù)器上的flash
利用php來自動調(diào)用不同服務(wù)器上的flash...2006-10-10如何在PHP中使用Oracle數(shù)據(jù)庫(2)
如何在PHP中使用Oracle數(shù)據(jù)庫(2)...2006-10-10用PHP的超級變量$_GET獲取HTML表單(Form) 數(shù)據(jù)
當(dāng) HTML 表單 (HTML Form) 的 method 為 get 時 , $_GET 用來獲取 HTML Form 的數(shù)據(jù)2011-05-05PHP 第二節(jié) 數(shù)據(jù)類型之?dāng)?shù)值型
編程語言的兩大功能是數(shù)據(jù)處理和流程控制;數(shù)據(jù)處理的基礎(chǔ)是數(shù)據(jù)類型和數(shù)據(jù)接口;流程控制是各種控制語句;程序的組織協(xié)調(diào)是各種編程范式;這一節(jié)先看下PHP有哪些基本的數(shù)據(jù)類型2012-04-04PHP5與MySQL數(shù)據(jù)庫操作常用代碼 收集
php最近比較熱門,所以學(xué)習(xí)php的朋友也越來越多,這里整理下數(shù)據(jù)庫的一些操作,需要的朋友可以參考下。2010-03-03無數(shù)據(jù)庫的詳細(xì)域名查詢程序PHP版(2)
無數(shù)據(jù)庫的詳細(xì)域名查詢程序PHP版(2)...2006-10-10