最近因為特別需求要在 IIS6 上面跑 PHP,把以前寫的筆記拿出來看,卻發現怎麼弄也跑不起來,看了很多篇文章還是不行,研究了許久終於可以跑了,經過多次測試保證 100% 可行。
※ 此篇是以 ISAPI 模式執行 PHP,建議使用另一篇的 FastCGI 會有較好的效能。
安裝步驟:
1. 確認 IIS 已經裝好,到 PHP 官網下載新版 PHP5 壓縮檔,並且解壓縮(假設在 C:\PHP5)。
2. 將 C:\PHP5\php.ini-dist 改名為 php.ini,然後依需求編輯設定檔內容,範例:
include_path = ".;C:\Inetpub\wwwroot"
extension_dir = "C:\PHP5\ext"
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_openssl.dll
extension=php_zip.dll
date.timezone = "Asia/Taipei"
3. 對 C:\PHP5 目錄增加 IIS_WPG 群組及 IUSR_XXXX 使用者的讀取及執行權限。
(關鍵步驟,一定要兩個都增加,否則執行 PHP 會跳出驗證框)

4. 加入系統環境變數 (讓 extension 及 php.ini 能順利被找到)。
Path=C:\PHP5;
PHPRC=C:\PHP5

5. 開啟 IIS 管理員,如下圖設定。

6. 增加預設首頁 index.php

7. 增加網頁服務延伸。

8. 重新啟動 IIS 就 OK 囉,丟一個測試檔案到網站目錄看看吧!

PHP, Server, 程式筆記, 系統筆記
FastCGI, IIS, ISAPI, PHP, server 2003
如果您的 Web Server 是採用 Apache,那有可能使用 Internet Explorer 下載 Office 2007(docx、ppts、xlsx...) 檔案的時候,會發現副檔名自動變成 .zip,有以下解決方法(擇一即可):
一、修改 mime.types 檔案
加入:
application/vnd.openxmlformats docx pptx xlsx
二、修改 httpd.conf 檔案
加入:
AddType application/vnd.openxmlformats .docx .pptx .xlsx
三、使用 .htaccess
加入:
AddType application/vnd.openxmlformats .docx .pptx .xlsx
參考文章:Office 2007 MIME types for Apache
Linux, Windows, 系統筆記
Apache, Server, 教學
語音合成系統通常拿來做 TTS(Text to Speach) 應用,英文 TTS 已經滿多且成熟了,但是中文的目前大多是廠商或實驗室驗自行開發,所以可能沒辦法免費拿來研究。
最近發現的 eSpeak 這個 Open Source 已經在最新的開發版本中加入中文語音支援囉!網頁在這裡,應該不久就會變成正式版本釋出。根據了解,好用的 StarDict 翻譯軟體也是使用 eSpeak 來作為朗讀發音系統哦!
在嘗試移植到嵌入式 ARM Linux 時失敗,因為實在太多 Shared Libraries 了,如果有成功的高手希望能分享一下心得。
Linux, 軟體筆記
eSpeak, Linux, TTS, 語音合成
Mac 這幾年的市佔率有攀升的趨勢,其中硬體轉換到 Intel-based 以及 Boot Camp 應該是很大的推手,在 Mac 電腦上安裝 XP/Vista 都已經不成問題了,甚至有報導指出目前跑 Vista 最快的 NB 為 MacBook Pro,所以我的下一台 NB 應該也會買 Macbook 吧,因為實在想不出不買它的理由啊= =
前陣子最火熱的應該是 Leopard 一上市就被破解可以裝在 PC 上的消息,不過看許多人討論都是以失敗或放棄收場,但是我拿了一台 A8Je NB 及 PC 試裝發現都可以成功進入系統,只是 NB 驅動有問題,沒辦法連上網。
PC 規格如下:
Pentium D 925
Gigabyte GA-945GM-S2
Nvidia GeForce 7300LE
Hitachi T7K250 160G
裝好使用上幾乎沒什麼問題,不過可惜的是 Boot Camp 無法使用。
安裝關鍵:
- 要有修改過的 Leopard 安裝光碟(DVD5 可燒那版)
- 下載 patch 檔放在隨身碟(內有 9a581PostPatch.sh 這個檔案的)
- 照著 Install Leopard on your PC in 3 easy steps 安裝
- 安裝時先選英文,並且按 Custom 取消打勾的套件
- 裝好重開,放上隨身碟,再進一次光碟安裝介面,選 Menu 的 Terminal,作 patch。(文中說的按 F8 我都失敗)
- 利用 tboot 引導作多重開機,可以參考這篇
這樣應該就 OK 了,再來就祈禱驅動都有抓到可以跑囉!如果網卡無法驅動可以試試 Via Rhine,我的 D-Link DFE-530TX 就是靠它跑起來的。
最後...在 PC 安裝破解的 Leopard 是非法的,玩玩就好,還是買台 Mac 來玩比較穩定&實在啦^^
系統筆記, 軟體筆記
Leopard, Mac, Macbook
關於如何編譯 ZD1211/ZD1211B 晶片的 USB 無線網卡 driver,經常在各大討論區及 BBS 看到有人提出相同的問題,因此來寫個教學。
前往 ZD1211 專案網站可以知道目前有三種版本的驅動,其中建議使用 zd1211rw 這個版本,因為它持續在更新且已納入 Linux 2.6.18 以後的 kernel 裡。zd1211rw 支援這三種晶片:
- ZyDAS ZD1211
- ZyDAS ZD1211B
- Atheros AR5007UG
不過既然都已經納入 kernel 了為什麼還要編譯驅動?因為還是有很多產品的 USB ID 不能被 zd1211rw 所辨識(我的 PCI GW-US54GXS 就是),當然就沒辦法驅動囉!這篇要做的就是從 kernel 裡的 zd1211rw source code 加入對應的 USB ID,主機環境是 ubuntu 7.10,其他版本應該也差不多。
首先要安裝編譯相關套件 & 下載 linux source
$ sudo apt-get install build-essential kernel-package linux-source
切換至 src 目錄並解開 linux source
$ cd /usr/src
$ sudo tar -xjvf linux-source-2.6.22.tar.bz2
拷貝 kernel 設定檔(.config) 至 linux source
$ sudo cp linux-headers-2.6.22-14-generic/.config linux-source-2.6.22
編輯 zd_usb.c 加入新 USB ID,可利用 lsusb 指令可以找出網卡的 ID,如:2019:5303
$ cd linux-source-2.6.22
$ sudo vim drivers/net/wireless/zd1211rw/zd_usb.c
在檔案開頭不遠處可以看到一堆 USB ID 號碼,就是要加進這裡面,GW-US54GXS 是 ZD1211B 晶片,所以在 ZD1211B 下方增加一行:
/* ZD1211B */
{ USB_DEVICE(0x2019, 0x5303), .driver_info = DEVICE_ZD1211B },
確認後就存檔離開
開始編譯驅動
$ sudo mkdir .tmp_versions
$ sudo make drivers/net/wireless/zd1211rw/zd1211rw.ko
沒錯誤就會產生 zd1211rw.ko,將它覆蓋原本系統中的
$ sudo cp drivers/net/wireless/zd1211rw/zd1211rw.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/zd1211rw
$ sudo depmod -a
重開機應該就可以正確驅動了:D
參考資料:
Adding new device IDs to zd1211rw
Linux, Other, 硬體筆記
driver, Linux, wireless, zd1211
近期迴響