2008年8月21日 星期四

詳解Windows平台上架支援 PHP 的 Apache Server

加入書籤: HemiDemi MyShare Baidu Google Bookmarks Yahoo! My Web Del.icio.us Digg technorati furl


安裝版本

1. Apache2 2.2.9
2. PHP 5.2.6
3. MySQL 5.0.45
4. phpMyAdmin 2.11.8.1

請準備以上項目的 zip 壓縮版本,而不要用安裝版本,備齊這些資料就可以開始了。
示範平台:Windows XP

一、Apache

只有非官方的 Apache on Windows (Apache2) 才能直接在 Windows 安裝,安裝步驟如下:
1. 請先安裝 Visual C++ 2005 Redistributable Package(2.55MB)
http://www.apachelounge.com/download/vcredist_x86-sp1.exe

2. 將 Apache2 解壓縮到 C:\ (例:C:\Apache2)

3.
開始 > 執行 > 輸入 cmd > 確定
cd\apache2\bin
httpd -k install
httpd -k start
(P.S. httpd -k uninstall 為移除 Apache2 服務)
4. 開啟一個瀏覽器,在網址列輸入 http://localhost 測試,出現「It works!」字樣即為安裝成功。(預設網站資料夾為 C:\Apache2\htdocs)
二、PHP

安裝 PHP

將 PHP 檔案解壓縮到資料夾 C:\php (沒有請新增)
將 php5ts.dll、libmysql.dll copy 到 C:\Apache2\bin
將 php.ini-dist copy 到 C:\apache2 並更名為 php.ini

設定 php.ini

找到 extension_dir = "./" 改成 extension_dir = "C:\php\ext"
找到 ;extension=php_mbstring.dll 改成 extension=php_mbstring.dll
找到 ;extension=php_mysql.dll 改成 extension=php_mysql.dll
找到 ;date.timezone = 改成 date.timezone = "Asia/Taipei"
(如果你不在台灣,請改成你的時區.. )
將 php.ini 存檔後關閉

設定 Apache,以模組方式載入 PHP

開啟 C:\Apache2\conf\httpd.conf

找到 #LoadModule vhost_alias_module modules/mod_vhost_alias.so
在下方加入 LoadModule php5_module "c:/php/php5apache2_2.dll"

找到 AddType application/x-gzip .gz .tgz
在下方加入 AddType application/x-httpd-php .php

找到 DocumentRoot "c:/Apache2/htdocs" ,改成你的網站資料夾
(例 www)DocumentRoot "c:/www"

找到 <Directory "c:/Apache2/htdocs"> ,改成你的網站資料夾
(例 www)<Directory "c:/www">

找到 DirectoryIndex index.html ,改成
DirectoryIndex index.html index.htm index.php

設定 Apache,開啟 rewrite 模組(不需要者可略過)

找到 #LoadModule rewrite_module modules/mod_rewrite.so
改成 LoadModule rewrite_module modules/mod_rewrite.so

搜尋 AllowOverride None (可找到三個結果)
全部改成 AllowOverride All

重新啟動 Apache

開始 > 執行... > 輸入 cmd > 確定
cd\apache2\bin
httpd -k restart

測試 PHP 環境

請在你的網站資料夾裡新建檔案 phpinfo.php ,內容只有一行如下:

<?php phpinfo() ?>

開啟一個瀏覽器,並在網址列輸入 http://localhost/phpinfo.php
如果有出現 php 相關訊息就代表安裝成功了。

三、MySQL

安裝 MySQL

將 MySQL 檔案解壓縮到 C:\ 並將資料夾 mysql-5.0.37-winx64 更名為 mysql,
(例C:\mysql)

依下列程序安裝 MySQL 服務
開始 > 搜尋列
輸入 C:\mysql\bin\mysqld -install 按確定

MySQL 講座(懂了就可以跳過,請確認 MySQL 已啟動)

一般在 WindowsNT/2000/XP/Vista,MySQL需要安裝成為一個系統服務。
你可以在以下程序看到 MySQL 服務。
我的電腦上按右鍵選管理
服務及應用程式 > 服務
在 MySQL 上點兩下(如果沒有找到代表你安裝不成功)
啟用類型: 自動.. 服務狀態: 已啟動 才是正常,如果不是請設定成這樣。經過此設定後,MySQL 服務將會在你每次開機後自行啟動。

如果要移除 MySQL 服務,請作以下動作
先停止 MySQL 服務,我的電腦上按右鍵選管理
服務及應用程式 > 服務
在 MySQL 上點兩下
啟用類型: 自動.. 服務狀態: 已停止,設定成這樣。
開始 > 執行
輸入 C:\mysql\bin\mysqld -remove 按確定
需注意,若沒有這個動作自行刪除 MySQL 檔案,這裡的 MySQL 服務就會變成無法移除了!

設定 MySQL 編碼
在 C:\WINDOWS\ 之下建立檔案 my.ini ,設定 MySQL 預設編碼為 UTF-8 (或其他)
my.ini

[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8

重新啟動 MySQL
我的電腦上按右鍵選管理
服務及應用程式 > 服務
在 MySQL 上按右鍵 > 重新啟動
四、phpMyAdmin

安裝 phpMyAdmin

將 phpMyAdmin 檔案解壓縮到 (你的網站資料夾)\phpmyadmin,
(例C:\www\phpmyadmin)

設定 phpMyAdmin

開啟 phpMyAdmin\libraries 資料夾中的 config.default.php
找到 $cfg['PmaAbsoluteUri'] = ''; 改成
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin/';
(設定 phpMyAdmin 的絕對路徑)

測試 phpMyAdmin

開一個新的瀏覽器,並在網址列輸入 http://localhost/phpmyadmin/index.php有畫面的話,就是代表安裝成功了。

Apache 安裝設定教學

加入書籤: HemiDemi MyShare Baidu Google Bookmarks Yahoo! My Web Del.icio.us Digg technorati furl

官方網站:http://www.apache.org/
安裝步驟
  1. 下載並執行 Apache HTTP Server 2.2.9
  2. 安裝精靈起始(Installation Wizard)畫面:
    • 直接按 Next。
  3. 使用許可協議(License Agreement)畫面:
    • 點選 I accept the terms in the license agreement。
    • 按 Next。
  4. 讀我檔案(Read This First)畫面:
    • 直接按 Next。
  5. 伺服器資訊設定(Server Information)畫面:
    • Network Domain 與 Server Name 請依照實際情況填寫,若不知道可填 localhost。
    • Administrator's Email Address 則是填自己的 Email 信箱。
    • 按 Next。
  6. 安裝類型選擇(Setup Type)畫面:
    • 點選 Custom。
    • 按 Next。
  7. 自訂安裝元件選擇(Custom Setup)畫面:
    • 直接按 Next。
  8. 安裝確認(Ready to Install the Program)畫面:
    • 直接按 Install。
  9. 安裝完成(Installation Wizard Completed)畫面:
    • 按 Finish。
    • 安裝成功。
設定步驟

可將右下角小時鐘旁的Apache Monitor小圖示關閉,不影響伺服器運作。

httpd.conf 設定

用記事本開啟 C:\Program Files\Apache Group\Apache2\conf\httpd.conf,並按照以下原則進行修改。

請自行以關鍵字尋找並取代預設設定,若沒有預設設定則新增在檔案最後面即可。

強調的部分請依實際情況修改。

請注意斜線(/)與反斜線(\)的不同,以免造成不必要的錯誤。

設定完成後必須重新啟動伺服器以套用新的設定。

  • 網頁目錄及權限設定

    設定說明:

    • 以 D:\www 目錄作為網頁存放路徑。
    • 若目錄中沒有索引頁(index.html等),則傳回 403 Forbidden,不會列出目錄中檔案。
    DocumentRoot "D:/www"
    <Directory />
    Options None
    AllowOverride FileInfo
    Order allow,deny
    Allow from all
    </Directory>


    另外,建議以<Directory</Directory>為關鍵字,搜尋並將不相關的目錄設定標記起來,使其沒有作用。




  • 索引頁檔名設定

    設定說明:




    • 依次以index.html與index.xml為首頁檔名。



    DirectoryIndex index.html index.xml



  • 錯誤頁面設定

    設定說明:




    • 在發生 403 Forbidden 與 404 Not Found 時,以 /error/*error.php 的內容取代錯誤訊息。



    ErrorDocument 403 /error/403error.php
    ErrorDocument 404 /error/404error.php



  • 使用 mod_deflate 增進傳輸效能設定

    設定說明:




    • 在瀏覽器可以接受的情況下,傳送壓縮過的內容以增進傳輸效率,但會增加伺服器負擔。


    • DeflateCompressionLevel 設定壓縮等級。


    • AddOutputFilterByType 根據 MIME Type 設定要壓縮的檔案類型。


    • AddOutputFilter 根據副檔名設定要壓縮的檔案類型。



    LoadModule deflate_module modules/mod_deflate.so
    <ifmodule mod_deflate.c>
    DeflateCompressionLevel 9
    AddOutputFilterByType DEFLATE text/html text/xml text/css application/x-httpd-php
    AddOutputFilter DEFLATE html htm xml php css
    </ifmodule>


狀態廣告

EasyReadMore