apache|mysql|apache|mysql 1、安裝php:將下載的php壓縮檔解壓,檔案夾改名為php複製到c盤根目錄下。
2、開啟剛才解壓的PHP目錄,你會發現有一個叫做"php.ini-dist"的檔案,這就是PHP的設定檔了,你需要把它改名成"php.ini",然後複製到系統目錄winnt下。
修改php.ini其中有必要注意的是
270行error_reporting = E_ALL & ~E_NOTICE
277行display_errors = On
另:365行register_globals 預設 Off,改成on的意思是開啟全域變數,以後編程方便。
; cgi.force_redirect = 1改成 cgi.force_redirect = 0這樣做是強迫不運行在cgi模式下
3、 PHP安裝目錄下的"php4ts.dll"必須要複製到windows系統的system32目錄下
4、dlls和extensions目錄裡的所有檔案拷到system32 裡
Apache2安裝
首先停止你的iis或pws服務。
1 運行你下載的Apache2安裝檔案,安裝Apache,安裝過程中會提示你輸入主機名稱,管理員信箱等信箱,這些資訊在你安裝完以後是可以修改的,所以可以放心的輸入。
(*為了以後操作方便起見,強烈建議將此處的安裝路徑用"Change"改變到"X:"下(注X為你的硬碟盤符)或者符合8.3檔案名稱格式的其他名稱,以後每次輸入Apache安裝路徑時,都不必為其添加引號。系統安裝成功後將自動在此建立一個名為"Apache2"的目錄,也就是說,安裝之後的實際Apache系統檔案所在路徑將為"X:Apache2"目錄。*)
安裝完後,在apache2confhttpd.conf 下尋找ServerAdmin,即可修改管理員信箱,(199行附近);213行則是ServerName 我改為localhost
以後我都是把程式放在了apache2的htdocs下的子目錄zimulu,用http://localhost:81/zimulu/xxx.php 測試。
2 編輯apache2/conf/httpd.conf
120行Listen 80改為81連接埠,這是因為當你的win2k重起後,iis將會重佔80連接埠,為避免衝突,所以apache使用81連接埠。
下面的134-170行左右為載入模組的部分。在這部分下面的加上兩句:
LoadModule php4_module c:/php/sapi/php4apache2.dll
//注釋:如果你的php目錄不是C:/php,請按實際來寫。
AddType application/x-httpd-php .php .php3 .php4
(這一句有人說也可以加到768行左右的AddType application/x-tar .tgz之後,不過我有一次這麼作了以後沒弄成)意思是:載入php4模組, 其中第2句如果僅僅是AddType application/x-httpd-php .php則只能解析php副檔名的檔案,php3副檔名的程式解析不了。
注意:我們一般是模組化運行php,所以僅僅這樣即可,有的文章說如此添加:
ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"
或者
LoadModule php4_module c:/php/sapi/php4apache2.dll
AddType application/x-httpd-php .php4
ScriptAlias /php4/ "c:/php/"
Action application/x-httpd-php4 "/php4/php.exe"
AddType application/x-httpd-php4 .php
其實是以cgi方式運行php,沒有那個必要。
找到DirectoryIndex * 這行,可以這樣修改,添加預設的檔案名稱:
DirectoryIndex index.php default.php index.htm index.html default.htm default.html
否則不能自動識別index.php。
使之支援中文
最好的解決辦法是:修改了Apache中conf/httpd.conf檔案,尋找 AddDefaultCharset ISO-8859-1
並且改成
#AddDefaultCharset ISO-8859-1
AddDefaultCharset GB2312
注意使用dreamweaver做出的檔案多有:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
其實這樣往往導致檔案中中文成亂碼!!因為:http.conf中355行 DefaultType text/plain而不是text/html,所以手動修改成text/plain即顯示中文。
3 開始---運行----cmd
c:Apache2/bin>
輸入apache -k install
輸入apache -k start
4 訪問http://localhost:81顯示APACHE歡迎頁面 (恭喜,Apache2安裝成功)
寫一最簡單的php程式
<?php
phpinfo();
?>
,命名為info.php存入apache2/htdocs下,然後地址欄內敲入http://localhost:81/info.php應該顯示php和apache2的相關資訊了,這樣終於就可以開始php學習之旅(樂)。
(什麼您不願意把程式放在apache2/htdocs下,那麼回到httpd.conf找DocumentRoot "x:/Apache/htdocs"把x:/Apache/htdocs改成你喜歡的目錄名就是了。)
僅僅是php 還是不夠的,很多大一點的程式都用得到資料庫,於是我們開始了:
mysql的安裝
象大多資料所講述的那樣,Mysql輕而易舉就安裝成功的,安裝簡單,但是調試難。mysql安裝成功後,進入mysql/bin雙擊winmysqladmin,第一次運行需要輸入使用者名稱密碼,比如我的虛擬空間的資料庫使用者名稱abc,密碼是xyz;於是我就輸入了abc xyz;為了是以後本地作好的程式可以直接ftp 。然而~~~~黃粱美夢~~~~~名副其實的黃粱美夢,不到5分鐘(煮熟米飯好象要10分鐘吧)我就蒙了:我有一個程式
<?php
$db_conn=mysql_connect("localhost","abc","xyz") or die("Can't connect!!");
?>
在虛擬空間啟動並執行好好的,到本地就是串連不上資料庫!!把phpmyadmin2.5.4改個名成p254,進裡面把config.inc開啟,修改第80、81行
$cfg['Servers'][$i]['user'] = 'abc';
$cfg['Servers'][$i]['password'] = 'xyz';
第83行的$cfg['Servers'][$i]['only_db'] = '';如果鍵入資料庫名dbone,則phpmyadmin內只能看到這一個dbone資料庫了,其餘的都看不到。
地址欄裡鍵入http://localhost:81/p254(最好關了防火牆,即使你用的是公安部評分95分的那個)然而出現在我眼帘的是:
phpMyAdmin 試圖串連到 MySQL 伺服器,但伺服器拒絕串連。您應該檢查 config.inc.php 中的主機、使用者名稱和密碼,並且確定這些資訊與MySQL 伺服器的管理員所給出的資訊一致。
而我把confgi.inc的內容改回去也就是用
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
則可以串連成功!!
面對這種情況,我參考上次安裝mysql3.23.55的經驗,進了winnt裡找my.ini,修改最下面2行
user=abc
password=xyz
還是不行,於是開始胡思亂想,好一通修改:php.ini裡有關於mysql的項目,改,不好用;config.inc下面還有$i = 1時的
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
也改了,(其實那是用於多個mysql啟動並執行時候管理用的,單機上只跑一個mysql根本就用不著改)。暈~~~~上了一通csdn,被告之刪了my.ini,重起後自動重建my.ini,比樣照作~~~~雙擊winmysqladmin,果然又是讓輸入username和password。然而重新輸入的,還是不起作用!!於是腦袋一熱耍起小聰明 來,重新改寫config.inc用root和空密碼進入phpmyadmin,進mysql資料庫的user表,直接插如一個uk15f1的使用者名稱密碼就是o1s3f2g7,結果~~~~竟然決然居然還是不好用!!!(注意:這個毛病在用mysql 3.x時沒有犯過,可能是mysql4.x的bug)最後的解決是使用命令列c:mysql/bin/mysql