2008-03-31T06:14:05の更新内容

linux/tips/lighttpd/index.wiki.txt

current previous
1,85 0,0
+
${smdncms:tags,lighttpd}
+
*lighttpd
+

          
+
-関連するページ
+
--[[linux/centos/lighttpd-php]]
+

          
+
**Core Options
+
***index file
+
index-file.namesでインデックスファイルを指定できる。
+
 index-file.names =
+

          
+
***document root
+
server.document-rootでサーバのドキュメントルートを指定できる。
+
 server.document-root = "/srv/lighttpd/"
+

          
+
***アクセス制限
+
$HTTP["remoteip"]でリモートIPを取得できる。 url.access-denyと組み合わせることでアクセス制限ができる。
+
 if $HTTP["remoteip"] != "192.168.1.0/24" {
+
   url.access-deny =
+
 }
+

          
+
$HTTP["useragent"]でUAを取得できる。 同様にしてUA別にアクセス制限ができる。
+
 if =~ "MSIE" {
+
   url.access-deny =
+
 }
+

          
+
***ログの出力先
+
accesslog.filenameでアクセスログの出力先、server.errorlogでエラーログの出力先を設定できる。
+
 accesslog.filename         = "/var/log/lighttpd/access.log"
+
 server.errorlog            = "/var/log/lighttpd/error.log"
+

          
+
***リクエストおよびレスポンスヘッダの出力
+
debug.log-response-headerおよびdebug.log-request-headerにenableを指定することでログにヘッダの内容を出力できる。
+
 debug.log-response-header = "enable"
+
 debug.log-request-header = "enable"
+
debug.log-request-header-on-errorを使用するとエラーの場合のみリクエストヘッダを出力できる。
+

          
+
**mod_alias
+
***URLのマッピング
+
alias.urlでURLと物理パスのマッピングができる。
+
 alias.url +=
+

          
+
**mod_cgi
+
***CGIとして実行するスクリプトファイルの設定
+
CGIとして実行するスクリプトファイルの割り当て方。
+
 cgi.assign +=
+
 cgi.assign +=
+
 cgi.assign +=
+

          
+
PHPの場合、
+
 <?php
+
 phpinfo();
+
 ?>
+
とだけ書いたスクリプトをリクエストすると環境情報等を一覧にしたページが表示される。
+

          
+
**mod_setenv
+
***application/xhtml+xmlに対応していないUAに対してはtext/htmlで返す
+
XHTMLなどをapplication/xhtml+xmlとして配信する場合に、Microsoft Internet Explorer(6.0, 7.0)などのapplication/xhtml+xmlに対応していない(または望ましくない挙動をする)UAからのリクエストに対しては、Content-Typeをtext/htmlにする方法。
+
 $HTTP["useragent"] =~ "MSIE" {
+
   $HTTP["url"] =~ ".*\.xhtml$" {
+
     setenv.add-response-header =
+
   }
+
 }
+
UAにMSIEを含み、拡張子.xhtmlで終わるファイルに対するリクエストの場合はContent-Typeをtext/htmlにするようになる。 条件をネストする場合、$HTTP["url"]は一番内側に書かないと設定が適用されないので注意。
+
この方法だとリクエストURIからファイルの拡張子.xhtmlかどうか判断しているので、index-file.namesにindex.xhtmlを指定していて、かつリクエストURIが/で終わる場合には対応できない。 version 1.5からはリクエストされたファイルのパスを取得する$PHYSICAL["existing-path"]が導入されるので、
+
 $PHYSICAL["existing-path"] =~ "\.xhtml$" {
+
   setenv.add-response-header =
+
 }
+
というように書くことが出来るようになる。 また、mimetype.assignでMIME Typeを変えることでも同様のことができる。
+
 $HTTP["useragent"] =~ "MSIE" {
+
   mimetype.assign =
+
 }
+

          
+
**mod_compress
+
***gzip圧縮されたファイルを展開した状態で表示させる
+
mod_setenvのsetenv.add-response-headerを使用することでレスポンスの内容エンコーディング(Content-Encoding)を指定できる。 例えば.diff.gzの拡張子を持つファイルについて、add-response-headerで内容エンコーディングにgzipやcompressを指定して返せば、UA側では解凍した状態で表示するようになる。
+
 $HTTP["url"] =~ "\.diff\.gz" {
+
     setenv.add-response-header =
+
     mimetype.assign =
+
 }
+
mod_compressのドキュメントの[[Display compressed files:http://trac.lighttpd.net/trac/wiki/Docs%3AModCompress#display-compressed-files]]には"mimetype.assign =。
+

          
+
-関連するページ
+
--[[linux/tips/apache]]
+