N900 架設 lighttpd 伺服器

 

lighttpd 是一款標榜效能與兼具輕量化的網頁伺服器軟體,它可以用來在 N900 上架設一個簡單的網站,提供檔案分享或是執行一些 PHP 程式,只不過由於 N900 的 PHP 套件缺乏 SQL 資料庫的相關支援模組,所以 PHP 的應用會比較受限。

 

1. 安裝 lighttpd

請至【系統管理員】→【網路】類搜尋並安裝「LigHTTPd Mini Web Server」和「php5-cgi」這兩個套件。

 

2. 設定 lighttpd

如果要啟用 PHP 支援,首先使用 root 權限編輯 /etc/php5/cgi/php.ini,在 [PHP] 區塊中加入一行:

cgi.fix_pathinfo = 1

 

然後同樣使用 root 權限編輯 /etc/lighttpd.conf,在 server.modules 項目找到 "mod_fastcgi" 將註解拿掉。接著,找到下列這些被註解的設定值:

#fastcgi.server = (
#	".php" => (
#		"localhost" => (
#			"socket" => "/tmp/php-fastcgi.socket-0",
#			"bin-path" => "/usr/sbin/php-fastcgi",
#			"max-procs" => 1
#		)
#	)
#)

將註解拿掉,改成以下內容:

fastcgi.server = (
	".php" => (
		"localhost" => (
			"socket" => "/tmp/php.socket",
			"bin-path" => "/usr/bin/php-cgi",
			"max-procs" => 1
		)
	)
)

 

這樣便會啟用 PHP 支援。

 

如果想要用伺服器做檔案分享,那麼建議啟用網站目錄的瀏覽功能,同樣在 /etc/lighttpd.conf 裡頭,找到這行設定將註解拿掉即可:

server.dir-listing = "enable"

 

3. 啟動 lighttpd

啟動和關閉指令如下:

  • sudo /etc/init.d/lighttpd start
  • sudo /etc/init.d/lighttpd stop

 

然後 lighttpd 預設會在 N900 開機後自動啟動,如果要移除此功能,可進行以下動作:

  • sudo rm /etc/event.d/lighttpd

 

4. 測試 lighttpd

可以找台電腦連結 N900 的區域網路或網際網路 IP,或者最直接的方式就是在本機、也就是 N900 上開啟網頁瀏覽器(本文的範例是使用 Opera Mobile),連結 http://localhost 或 http://127.0.0.1 即可。若 lighttpd 順利啟動,應該會出現「404 Not Found」的訊息,這是因為還沒有在網站目錄放置首頁的關係,而預設的網站目錄是 /wwwPHP。

 

若要做檔案分享,一個簡單的範例是將 /home/user/MyDocs 連結到 /wwwPHP 目錄,指令如下:

  • ln -s /home/user/MyDocs/ /wwwPHP/docs

 

如此一來,連結網站的 docs 路徑便可以存取到 MyDocs 的內容。

 

5. 移除時的疑難排解

若沒有在 N900 上另外安裝 bash shell,那麼在移除 php-common 套件時便會遭遇錯誤,所以解法之一是預先安裝 bash shell,可以在【系統管理員】→【工具】類搜尋並安裝「bash3」套件。而另一種解法是直接編輯 /var/lib/dpkg/info/php5-common.postrm,將「#! /bin/bash」改為「#! /bin/sh」再進行移除即可。