Lighttpd
Lighttpd
Lighttpd是一個新興的、輕量級的 web 服務器,它開始越來越多的應用在一些重要場合,如:YouTobe、Sourceforge、豆瓣……
Lighttpd 以安全、快速和內存消耗低著稱,還專門為大型分布式連接環境做了優化,支持 FastCGI, CGI, Auth, 輸出壓縮(output compress), URL重寫, Alias 等重要功能。
Lighttpd 已經進入大多數發行版的軟件倉庫,安裝方式見表?16.1 “包管理系統”
安裝完成后,用啟動腳本啟動:/etc/init.d/lighttpd start,見“手動控制服務”一節
/etc/lighttpd/lighttpd.conf為 Lighttpd 服務器的配置文件[43]:
## 網站根目錄 映射在機器上的物理路徑 server.document-root = "/home/lighttpd/html/"## 如果網站目錄中出現以下文件名,不用指定文件名便可直接訪問 index-file.names = ( "index.php", "index.html","index.htm", "default.htm" )## Lighttpd 進程的歸屬用戶 server.username = "nobody"## Lighttpd 進程的歸屬群組 server.groupname = "nobody"## 綁定到端口 默認為 80 #server.port = 81## 綁定到地址 默認為 所有 #server.bind = "127.0.0.1"## 訪問日志 路徑 accesslog.filename = "/var/log/lighttpd/access.log"## 錯誤日志 路徑 server.errorlog = "/var/log/lighttpd/error.log"## 禁止訪問以下文件 url.access-deny = ( "~", ".inc" ) ## 與目錄列表相關的設置 #dir-listing.activate = "enable" #dir-listing.encoding = "utf8" #dir-listing.show-readme = "enable"配置文件中的server.modules字段決定Lighttpd使用哪些擴展模塊:
server.modules = ("mod_access","mod_fastcgi","mod_accesslog" )- Lighttpd 通過 mod_fastcgi 模塊支持 PHP
- mod_accesslog 模塊為訪問紀錄
其實在 /etc/lighttpd/lighttpd.conf 文件中,這部分內容寫在多行,方便用 # 作注釋,禁用不需要的模塊
server.modules = ( ## 基礎模塊"mod_access", ## 訪問紀錄"mod_accesslog" ) ## fastcgi 支持"mod_fastcgi", ## cgi 支持 # "mod_cgi", ## 路徑綁定 # "mod_alias", ## 代理 (轉發頁面) # "mod_proxy", ## 虛擬主機 # "mod_evhost", ## 輸出壓縮 # "mod_compress", ## 網址重寫 # "mod_rewrite", ## 用戶認證 # "mod_auth", # "mod_redirect", # "mod_cml", # "mod_trigger_b4_dl", # "mod_status", # "mod_setenv", # "mod_simple_vhost", # "mod_userdir", # "mod_ssi", # "mod_usertrack", # "mod_expire", # "mod_secdownload", # "mod_rrdtool",fastcgi 配置
在配置文件的server.modules字段中啟用mod_fastcgi模塊,然后檢查以下內容:
### fastcgi 腳本擴展名 static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) ### fastcgi 服務器設置 fastcgi.server = ( ".php" =>( "localhost" =>( # TCP/IP 接口 (“套接字”)"socket" => "/tmp/php-fastcgi.socket", # PHP cgi 模式的可執行文件(PHP 有 cli 和 cgi 兩種模式)"bin-path" => "/usr/bin/php-cgi")))上面例子的第二部分,使用 Lighttpd 轉發規則。大意為: .php文件按以下方式處理 => 從localhost(本地),發送到/tmp/php-fastcgi.socket接口,使用/usr/bin/php-cgi處理。寫成一行比較直觀:
fastcgi.server = ( ".php" => ( "localhost" => ( "socket" => "/tmp/php-fastcgi.socket", "bin-path" => "/usr/bin/php-cgi" )))如果想要 fastcgi 和 PHP 協同工作,還需要對 PHP 作一些設置,見“PHP&MySQL”一節
proxy
該模塊可以將文件轉發到其它服務器進行處理,例如將.jsp文件轉發到Tomcat服務器
### 首先啟用 mod_proxy 模塊 # += 表示在原來設置上增加 servers.modules +=( "mod_proxy")### 設置 proxy 服務器轉發規則 proxy.server = ( ".jsp" =>( "localhost" =>( # 將 .jsp 文件發送到 地址“127.0.0.1”的“8080”端口(也就是本機的 Tomcat 服務器)"host" => "127.0.0.1","port" => 8080)))CGI
Lighttpd 可以支持 cgi
### 啟用 mod_cgi 模塊 server.modules += ("mod_cgi")### 設置 cgi 解釋器 cgi.assign = ( ".pl" => "/usr/bin/perl",".cgi" => "/usr/bin/perl" )路徑綁定
將一個路徑,映射到網站目錄中
## 啟用 mod_alias 模塊 servers.modules +=( "mod_alias") ## 將 /home/lighttpd/html/man 映射到 http://host/docs alias.url += ( "/docs" => "/home/lighttpd/html/man" )虛擬主機
Lighttpd 可以建立多個虛擬主機,綁定在不同的網絡接口
### 啟用 mod_evhost 模塊 servers.modules +=( "mod_evhost")### 虛擬主機綁定的網絡接口 $HTTP["host"] == "192.168.1.2" { ### 虛擬主機可以使用獨立的選項 dir-listing.activate = "enable" dir-listing.encoding = "utf8" dir-listing.show-readme = "enable" ### 虛擬主機根目錄 server.document-root = "/home/user/html" ### 虛擬主機路徑綁定 alias.url = ( "/download/" => "/home/user/downloads/" ) alias.url += ( "/pictures/" => "/home/user/pictures/" ) }[43] 查看/etc/init.d/lighttpd文件,可以看到類似字句:
/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf
- f 選項指定配置文件
轉載于:https://www.cnblogs.com/sharmy/archive/2009/03/31/1425816.html
總結
- 上一篇: SELECT语句“加锁选项”功能说明
- 下一篇: ISA服务器之域内×××用户在外网通过C