看PHP,MYSQL,都出了新版本,想嘗嘗鮮,就試著安裝了一下,然後把安裝過程記了下來,希望能對學習PHP的新手有些幫助,斑竹可以考慮精一下了
Windows XP下全新安裝Apache2,PHP5,MYSQL5,Zend的簡單過程
一、下載地址:
Apache2.0.50 :http://httpd.apache.org/download.cgi
PHP5.0.2 :http://cn2.php.net/get/php-5.0.2-Win32.zip/from/a/mirror
MYSQL5.0.2:http://dev.mysql.com/downloads/mysql/5.0.html
Zend2.5.2 :http://www.zend.com/store/free_download.php?pid=13]
軟件的安裝偶就不說了,其中只有PHP下的是zip包,直接解壓就可以了。
安裝順序就是上面列出來的順序,Zend我是最後等所有的運行都沒問題後才裝的。
二、簡單安裝過程:
(一)Apache:
Apache2.0.50的安裝很簡單,我就直接把他裝到了E盤根目錄下(我C盤是系統盤,D盤是temp盤,偶發現在windows下單獨拿個分區來做臨時文件的存放地對系統的速度影響不小,這樣做能提升系統運行的速度,感興趣的朋友可以試試看),安裝完後我的apache目錄就是E:\apache2
(二)PHP:
我是直接解壓縮放到E盤php目錄下了,這樣查找文件會方便許多。
(三)Mysql:
直接裝到E:\mysql下,它的默認目錄太長,是在C盤下的,偶的C盤是除windows的文件外別的一概不放的。
(四)Zend:
所有的調試都正常後我把Zend裝到了E:\program files\zend下
三、配置過程:
(一)http.conf
這個文件我改了幾個地方:
把PHP直接作為apache的一個模塊運行,我在裡面加了兩句:
CODE: [Copy to clipboard]
LoadModule php5_module "E:/php/php5apache2.dll"
AddType application/x-httpd-php .php
我在E:\apache2目錄下建立了一個www的目錄用於存放我的站點文件,在http.conf裡改了這樣一句話:
把DocumentRoot "E:/Apache2/htdocs"改成了DocumentRoot "E:/Apache2/www"
Apache2.0.x於1.3.x相比2.0.x默認不能直接列目錄,偶感覺不爽,就改了:
把DocumentRoot "E:/Apache2/www"這句下的如下語句
CODE: [Copy to clipboard]
Options FollowSymLinks
AllowOverride None
改為:
CODE: [Copy to clipboard]
Options Indexes FollowSymLinks
AllowOverride None
把apache的默認字符設置為中文簡體:
AddDefaultCharset GB2312
修改目錄的默認首頁:
DirectoryIndex 後面寫上你想設置為首頁的文件名,如:index.html index.php等
別的就沒再動什麼地方
注意一點的是,要使這些配置生效需要重新啟動apache
(二)php.ini
以前用php4.x的時候覺得配置起來很簡單,所以偶用PHP5也直接那麼配了,誰知道完了mysql不能用,說是無法連接動態庫,我仔細檢查了一下 php_mysql.dll明明存在,可就說找不到,這點讓我郁悶了N久,偶重新解壓了php5也沒用,後來在php的install文檔裡發現了這麼一句話: php_mysql.dll MySQL functions PHP >= 5.0.0, requires libmysql.dll (bundled)
於是偶才找到了原因......
配置php5.0.2是這樣來過的:
把php.ini-dist復制到C:\windows 下改名為 php.ini(裝過php的都做過吧)
然後修改了幾個地方:
extension_dir = "E:\php\ext" (指定動態連接庫的目錄,php5和php4不同的地方就是它的動態連接庫目錄變了,這在它的文檔結構裡有詳細的說明)
然後把下面幾句前面的分號去掉
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_imap.dll
;extension=php_mysql.dll
接下來修改了一些文件上傳以及內存使用最大限制:
memory_limit = 20M
post_max_size = 20M
upload_max_filesize = 20M
別的就沒改什麼了,這裡修改過php.ini以後也要重新啟動apache
接下來一點很重要的就是把php目錄下的 libmysql.dll 和 libmysqli.dll 復制到windows/system32下,如果不這樣做,mysql動態連接庫就無法正常加載。
(三)Mysql和Zend的配置
現在Apache和PHP都已經配置好了,在浏覽器裡輸入localhost看看結果,運行成功,然後輸入localhost/phpmyadmin看也成功。郁悶,Phpmyadmin提示錯誤信息:
QUOTE:
MySQL 返回:
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
奇怪了,偶明明裝的是MYSQL最新版本怎麼會客戶端版本過低呢,真是郁悶啊
就此放了一下,經多次測試仍然不成功就先放棄了一下,玩了一把KOF97
然後在CCF.熊貓和IM286.ceo的幫助下,終於找到了原因:
落伍ceo:“升級客戶端
新版本的mysql使用了新的密碼驗證方法
設置mysql密碼時使用old_password可以解決這個問題”
CCF.熊貓:“使用old_password”重新設定密碼就可以了”。
感謝這兩位朋友,具體解決辦法如下:
由於偶不知道怎麼升級client,因為在windows 下 server和client是捆綁安裝的,我就用了old_password的方法:
QUOTE:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;
然後浏覽“http://localhost/phpmyadmin”,OH YEAH! 測試成功!