2010年12月19日

在Windows上安裝PHP SERVER

這邊是以手動的方式安裝, 並和IIS共存, 因此改用8080 port取代80 port‧一共要安裝Http server和php5.3


下載

  1. 下載 Apache 2.2 HTTP SERVER, 選2.2.17版
    image
  2. 下載php 5.3, 要選VC6 x86 Thread Safe – zip
    image
  3. 下載Xdebug 2.0, 選Xdebug 2.1.0 - 5.3 VC6 (32 bit), 檔案為dll
image

設定路逕

以下會安裝Apache和PHP到D:\AppServ,路逕分別為
  • D:\AppServ\Apache2.2
  • D:\AppServ\php
因此也把PATH環境變數加入
D:\AppServ\Apache2.2\bin;D:\AppServ\php;

安裝

1.  安裝Apache 2.2
  • Setup Type 時選 Custom ,並按 Next。
  • 設定domain
    image
  • 把 Apache HTTP Server 2.2.xx 的 Install to 改到 D:\AppServ ,這樣下方 Apache Runtime 的 Install to 會自動變成 D:\AppServ\Apache2.2 。
2. 安裝php5.3
  • 建立D:\AppServ\php
  • 將下載的php-5.3.4-Win32-VC6-x86目錄下所有檔案, copy到D:\AppServ\php
  • 將下載回來的 php_xdebug-2.0.x-5.3-vc6.dll 複製到 D:\AppServ\php\ext 底下。
  • 製作reg檔, 將以下指令存成 IniFilePath.reg, 存好點兩下把機碼寫入
Windows Registry Editor Version 5.00   [HKEY_LOCAL_MACHINE\SOFTWARE\PHP]
"IniFilePath"="D:\\AppServ\\"

3. 修改php.ini

  • 把 D:\AppServ\php\php.ini-development 複製成 php.ini ,然後將它放到 D:\AppServ 底下。
  • 打開php.ini, 找到以下標籤, 改成以下:
  • error_log = "D:/Temp/php/error.log"
  • 修改timezone
  • date.timezone = Asia/Taipei
  • 上傳設定
  • post_max_size = 100M (這裡請自行決定大小)
    
    upload_max_filesize = 50M (通常會比 post_max_size 小)
  • ap的路徑
  • upload_tmp_dir = "D:\Temp\php\upload" (上傳暫存路徑)
    
    include_path = ".;D:\AppServ\php\pear" (加入 PEAR 的引用路徑)
    
    session.save_path = "D:\Temp\php\session" ( Session 暫存路徑)
    
    extension_dir = "D:\AppServ\php\ext" (extension 載入路徑)
  • 延伸套件的部份 (把前面的;註解去掉即可)extension=php_gd2.dll
  • extension=php_mbstring.dll 
    
    extension=php_mysql.dll 
    
    extension=php_mysqli.dll
    
    extension=php_pdo_mysql.dll ( Zend Framework 建議使用 PDO) 
    
    extension=php_pdo_sqlite.dll 
    
    extension=php_sqlite.dll 
    
    extension=php_sqlite3.dll
  • 加入Xdebug , 將以下內容加在php.ini最後
  • [Xdebug]
    zend_extension="D:\AppServ\php\ext\php_xdebug-2.0.x-5.3-vc6.dll"
    xdebug.profiler_enable=on
    ;xdebug.show_exception_trace=on
    xdebug.show_local_vars=on
    xdebug.trace_output_dir="D:/TEMP/php/xdebug"
    xdebug.profiler_output_dir="D:/TEMP/php/xdebug"
    

4. 修改 httpd.conf, 位置:D:\AppServ\Apache2.2\conf\httpd.conf

  • 讓Appache使用PHP
  • LoadModule php5_module D:/AppServ/php/php5apache2_2.dll
    AddType application/x-httpd-php .php
  • 找到把#去除, 改成你的主機名稱
  • ServerName 191.168.1.1:8080
  • 首頁啟始網頁設定, 加入index.php
  • DirectoryIndex index.html index.htm index.php
  • 如果 Apache 找不到 php.ini ,那麼可以再加入以下指令:
  • PHPIniDir "D:/AppServ/php"
  • 加入 mod_rewrite 模組 (去掉井字號註解即可) :
  • LoadModule rewrite_module modules/mod_rewrite.so
  • sa修改預設網站的根目錄
  • D:/AppServ/Apache2.2/htdocs
    
    改成
    D:/WEB/wwwroot
    
  • 啟用 .htaccess ,找到:
  • <Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    </Directory>
    
    改為
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
allow from all
</Directory>

TEST

1. 在 D:\WEB\wwwroot 下建立一個 index.php 檔,然後寫入以下內容:

<?phpphpinfo();

2. 如果先前安裝HTTP server是選”Only for current user,on port 8080,when started manually”程式點start apache in comsole, 如果沒錯誤有一黑色dos視窗表示Appache在運行

3. 瀏覽器輸入http://localhost:8080/

如果出現以下就成功了

image 


參考:

http://www.jaceju.net/blog/archives/703

http://www.php5.idv.tw/html.php?mod=article&do=show&shid=19

http://www.piaoyi.org/php/apache-403-Forbidden.html

沒有留言:

張貼留言