windows XP下 php環境搭建

來源:互聯網
上載者:User

1.參考資料:http://zhidao.baidu.com/question/74350698.html
下載PHP5:    http://cn2.php.net/distributions/php-5.2.6-Win32.zip 
下載apache:  http://down.chinaz.com/soft/18000.htm

一.php的安裝與調試
由於php是一個zip檔案(非install版),安裝較為簡單,解壓就行。把解壓的 php5.2.1-Win32重新命名為 php5。並複製到C盤目錄下。
即安裝路徑為 c:\php5 
1找到php目錄下的 php.ini-dist或 php.ini.recommended檔案,重新命名為 php.ini
並複製到系統硬碟的windows目錄下(以c:\windows為例). 
2再把php目錄下的php5ts.dll,libmysql.dll複製到目錄 c:\windows\system32下。
3把php5\ext目錄下的php_gd2.dll,php_mysql.dll,php_mbstring.dll檔案複製到c:\windows\system32下 
如果沒有載入 php_gd2.dll     php將不能處理映像。沒有載入php_mysql.dll php將不支援mysql函數庫
php_mbstring.dll在後面使用phpmyadmin時支援寬字元。
4 開啟c:\windows\php.ini檔案(關聯到mysql)
設定擴充路徑
尋找 extension_dir 有這麼一行extension_dir = "./"
將此行改成
extension_dir = "C:\php5\ext" 
其中C:\php5是你安裝php的路徑。路徑不正確將無法載入dll 
(注意:有些php版本是 ;extension_dir = "./" 要把前面的分號去掉)
尋找 extension 
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_mysql.dl 
把上面3項前面的分號去掉,這樣apache啟動時就可以載入這些dll了
當然前面我們也把這些dll複製到system32下了l 
php5時差問題
<?php echo date("Y-m-d H:i:s");?>時間相差八小時
為什麼呢?PHP5系列版本新增了時區設定,預設為格林威治時間,與中國所在的東8區正好相差8個小時
尋找date.timezone有這麼一行
;date.timezone =
將;去掉,改成
date.timezone = PRC
二.apache的調試和整合
1.修改網站根目錄
尋找 DocumentRoot有這麼一行
DocumentRoot"C:/Program Files/Apache Group/Apache2/htdocs"
這就是你網站的根目錄,你可以修改,也可以用預設的.如果改,還要修改下面這項,否則可能會出現 403 錯誤
尋找     This should be changed to whatever you set DocumentRoot to
在它下面兩行有
<Directory "C:/Program Files/Apache Group/Apache2/htdocs">
把上面兩項的 C:/Program Files/Apache Group/Apache2/htdocs 改成你想要的目錄
2.讓apache支援*.php(網頁)
尋找     DirectoryIndex index.html index.html.var
修改成
DirectoryIndex   index.html index.html.var   index.php  
這樣index.php 可以充當預設頁面了
3.Apache中模組化安裝php
尋找 # LoadModule foo_module modules/mod_foo.so
在此行後加入一行
LoadModule php5_module C:/php5/php5apache2.dll          //注意:其中C:/php5/php5apache2.dll是你安裝php的相應路徑.不要把php5apache2.dll和php5apache.dll混淆.php5apache.dll只適用於apache 版本1的.PHP5壓縮包裡的php5apache2.dll只適用於apache2.0.*版本,如果是2.2.*以上版本,就可能會出現"Cannot load C:/php/php5apache2.dll
into server: The specified module could not be found."或者:"The requested operation has failed"
4.尋找 AddType application/x-gzip .gz .tgz 
在此行後加入一行
AddType application/x-httpd-php .php (記住:前邊有一個空格哦!!!)
這樣apache就可以解釋php檔案了
5.測試
在網站根目錄下建立一個 phpinfo.php 檔案

<?php
phpinfo();
?>

在瀏覽器開啟

http://localhost/phpinfo.php

5.測試php和mysql資料庫的關聯
在網站根目錄下建立一個test.php 檔案

<?php
$link=mysql_connect("localhost","root","12345");     //12345改成你的mysql密碼
if(!$link) echo "失敗!";
else echo "成功!";
mysql_close();
?>

在瀏覽器開啟 http://localhost/test.php
如果輸出成功,則說明大功告成了
------------------------------------------------------------
2.以上為參考資料原文。我最開始參考的是:http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html。但是失敗了。
根據參考資料1,修改完設定檔之後,Apache啟動不起來。後來發現是修改設定檔時,php5appache2.dll版本錯誤。
-----------------------------------------------------------
參考資料:http://bbs.csdn.net/topics/380119856

原因一:80連接埠佔用例如IIS,另外就是迅雷。我的apache伺服器就是被迅雷害得無法啟用!

原因二:軟體衝突裝了某些軟體會使apache無法啟動如Dr.com 你開啟網路連接->TcpIp屬性->進階->WINS標籤 把netbios的lmhosts對勾去掉,禁用tcp/ip的netbios. 然後再啟動應該就可以了。
原因三:httpd.conf配置錯誤如果apache的設定檔httpd.conf搞錯了,在windows裡啟動它,會提示the requested operation has failed,這是比較鬱悶的事,因為查錯要看個半天。 其實可以用命令列模式啟動apache,並帶上參數,apache會提示你哪句有誤,然後就可以針對性的解決。

檢查錯誤方法:進入cmd 然後進入 Apache安裝目錄(具體為你自己的安裝目錄)\bin> httpd.exe -w -n "Apache2" -k start

(引號中的Apache2修改為你的Apache服務名,我的是2.2.4版,服務名就是Apache2,可以到電腦服務裡找)

提示133行有問題時(提示:Syntax error on line 133 of ...........),開啟Apache安裝目錄\conf\httpd.conf 找到第133行的ServerAdmin (沒有工具確定行數的按ctrl+F 用"ServerAdmin"關鍵字尋找,一般會有兩個,下面那個就是)這行在其後空一格,隨便加個名字,例如,加上abc後,就可以解決了.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.