天天看點

apache 子產品——擴充子產品和實驗子產品mod_dav_fs mod_dav_lock

mod_auth_digest

loadmodule auth_digest_module modules/mod_auth_digest.so

說明

使用md5摘要認證(更安全,但是隻有最新的浏覽器才支援)

狀态

實驗(x)

子產品名

auth_digest_module

mod_auth_digest子產品提供了對http摘要認證的支援。 

=================================================================

mod_authn_alias

mod_authn_anon

mod_authn_dbd

mod_authn_dbm

mod_authnz_ldap

loadmodule authn_alias_module modules/mod_authn_alias.so

loadmodule authn_anon_module modules/mod_authn_anon.so

loadmodule authn_dbd_module modules/mod_authn_dbd.so

loadmodule authn_dbm_module modules/mod_authn_dbm.so

loadmodule authnz_ldap_module modules/mod_authnz_ldap.so

以上5個擴充子產品,為mod_auth提供認證支援。

擴充子產品。

使用ldap目錄儲存認證使用者資訊。

mod_authz_dbm

mod_authz_owner

mod_authz_dbm        使用dbm資料庫檔案為組提供授權支援

mod_authz_owner     基于檔案的所有者進行授權

mod_cache

loadmodule cache_module modules/mod_cache.so

mod_cache需要一個或多個存儲管理子產品服務。在基本的apache發行版包括兩個存儲管理子產品:mod_disk_cache和mod_mem_cache

mod_disk_cache

mod_mem_cache

mod_disk_cache    基于磁盤的緩沖管理器

mod_mem_cache   基于記憶體的緩沖管理器

mod_file_cache

實驗子產品。

mod_file_cache    提供檔案描述符緩存支援,進而提高apache性能

mod_file_cache 子產品是搭配 mod_mem_cache 子產品使用的。

例子:基于disk的緩存

在httpd.conf 裡配置:

---------------------------------------------------------------

<ifmodule mod_cache.c>

    cachedefaultexpire 86400

    <ifmodule mod_disk_cache.c>

    cacheenable disk /

    cacheroot /tmp/apachecache

    cachedirlevels 5

    cachedirlength 5

    cachemaxfilesize 1048576

    cacheminfilesize 10

    </ifmodule>

</ifmodule>

-------------------------------------------------------------------

cachedefaultexpire:設定緩存過期的時間(秒),預設是1小時,隻有當緩存的文檔沒有設定過期時間或最後修改時間時這個指令才會生效

cacheenable:啟用緩存,第1個參數是緩存類弄,第2個參數是要緩存的url路徑,“/”是緩存所有的東西,如“/docs”則隻緩存 /docs 下的所有檔案

cacheroot:緩存檔案所在的目錄,運作 apache 的使用者(如daemon 或 nobody)要能對其進行讀寫,請手動建立該目錄并設定好通路權限

cachedirlevels:緩存目錄的深度,預設是3

cachedirlength:緩存目錄名的字元長度,預設是4

cachemaxfilesize 和 cachemaxfilesize:緩存檔案的最大值和最小值(byte),當超過這個範圍時将不再緩存

例子:基于mem的緩存

--------------------------------------------

    <ifmodule mod_mem_cache.c>

        cacheenable mem /

        mcachemaxobjectcount 20000

        mcachemaxobjectsize 1048576

        mcachemaxstreamingbuffer 65536

        mcacheminobjectsize 10

        mcacheremovalalgorithm gdsf

        mcachesize 131072

----------------------------------------------

cacheenable:啟用緩存,使用基于記憶體的方式存儲

mcachemaxobjectcount:在記憶體中最多能存儲緩存對象的個數,預設是1009

mcachemaxobjectsize:單個緩存對象size的最大值,預設是10000bytes

mcachemaxstreamingbuffer:在緩沖區最多能夠放置多少的将要被緩存對象的尺寸,該值通常小于100000或 mcachemaxobjectsize 設定的值

mcacheminobjectsize:單個緩存對象size最小值,預設為1bytes

mcacheremovalalgorithm:清除緩存所使用的算法,預設是 gdsf,靈異一個是lru

mcachesize:緩存資料最多能使用的記憶體,機關是 kb,預設是100kb

說明:

禁止緩存可以使用 cachedisable,如 cachedisable /private

如何測試是否成功緩存?

将loglevel設定到debug:

loglevel debug

errorlog /path/to/error.log

這樣,所有過程都會輸出到error的日志中。如果日志中出現了cache相關資訊,則說明mod_cache已經正常工作了。

關于mod_file_cache 參考:

apache緩存mod_cache配置

緩沖指南

===========================================================

mod_cern_meta

loadmodule cern_meta_module modules/mod_cern_meta.so

模拟元檔案語義,提供對元資訊的支援。

例子:為/var/www/html/mypage.html的檔案提供元頭标

# mkdir /var/www/html/.web/mypage.html.meta

# vi  /var/www/html/.web/mypage.html.meta

------------------------------------------

expires:saturday,3-oct-98 12:00:00 gmt

anything=whatever

-------------------------------------------

在.htaccess中

-------------------------------

metafiles on

metadir .web

metasuffix .meta

---------------------------------

==========================================================

================================================================

mod_charset_lite

loadmodule charset_lite_module modules/mod_charset_lite.so

允許對頁面進行字元集轉換。

提供以下指令:

charsetdefault 指令 要轉換的編碼

charsetsourceenc 指令 檔案的源編碼

charsetoptions 指令 設定轉換的參數

例子:

-----------------------------------------------

<directory /export/home/trawick/apacheinst/htdocs/convert>

charsetsourceenc utf-16be

charsetdefault      iso-8859-1

</directory>

------------------------------------------------

mod_dav

擴充子產品

mod_dav  允許apache提供dav協定支援

mod_dav_fs 為mod_dav通路伺服器上的檔案系統提供支援

mod_dav_lock 為mod_dav鎖定伺服器上的檔案提供支援

webdav(web分布式創作和版本控制)協定是一個基于http的新協定,利用這個協定使用者可以通過web進行遠端的基本檔案操作,如拷貝、移動、删 除等。

使用者對存儲在webdav伺服器上的文檔進行編輯時,可以對該文檔進行鎖定以保證自己的修訂不會被其他使用者覆寫。webdav的版本控制還可以讓使用者明白文檔的哪個版本是最新的,以減少不必要的混亂。

webdav的通路控制表提供了對每個檔案的讀、寫和共享許可的進階控制,更進一步提高了系統的安全性,webdav的檔案管理特性已經使它成為傳統文檔管理産品成本效益很高的一個替代方案。

具體參考:實戰攻略:為apache伺服器配置webdav

mod_dbd

管理sql資料庫連接配接,為需要資料庫功能的子產品提供支援。

mod_dbd使用apr_dbd管理管理sql資料庫連接配接。它為需要資料庫功能的子產品提供了資料庫連接配接支援,并且負責管理資料庫,進而為線程和非線程型的mpm提供了最佳的性能和可伸縮性。

mod_deflate

mod_deflate是apache2中的标準過濾器子產品,該子產品的功能與mod_gzip的功能一樣:壓縮網頁各類元件,加快網頁下載下傳速度。

例子

-------------------------

    <ifmodule mod_deflate.c>

    deflatecompressionlevel 9   #壓縮的級别設定為最高

    #将html、文本、xml、php進行壓縮

    addoutputfilterbytype   deflate text/html text/plain text/xml application/x-httpd-php

    # 将html、htm、xml、php、css、js進行壓縮

    addoutputfilter         deflate  html  htm  xml  php  css  js

-----------------------------------

mod_dumpio

mod_dumpio允許你記錄所有apache接收到的輸入和發送的錯誤輸出到錯誤日志(通常是error.log)中。

記錄資料的時刻被設計為恰好發生在ssl解碼(輸入)之後和ssl編碼之前(輸出)。正如你所預料到的,這麼做會導緻在日志中寫入及其海量的資料,隻建議你在發現問題并進行調試的時候使用。

=============================================================

mod_echo

實驗子產品

一個很簡單的協定示範子產品

==============================================================

mod_example

一個很簡單的apache子產品api示範子產品

mod_expires

loadmodule expires_module modules/mod_expires.so

允許通過配置檔案控制http的"expires"和"cache-control"頭内容。用戶端會檢查expires http頭标資訊來判斷緩存文檔是否過期,以此決定要不要重新請求文檔。

<ifmodule expires_module>

expiresactive on

expiresbytype text/html "access plus 15 days 2 hours"

expiresdefault "access plus 1 month"

----------------------------------

expiresactive on|off  開啟/關閉 expires 頭标的生成。

expiresbytype 指定mime類型文檔的過期時間。

-------------------------------------------------

所有文本檔案在用戶端緩存一小時後過期

expiresbytype text/plain a3600

所有gif檔案從最後修改時間算起一個星期後過期

expiresbytype p_w_picpath/gif m604800

在客戶通路該檔案時後7天過期

expiresbytype text/html "access puls 7 days"

expiresbytype p_w_picpath/gif "modification plus 1 years 1 months 1 weeks 1 days 1 hours 1 minutes 1 seconds";

----------------------------------------------------

expiresdefault 預設的過期時間。

--------------------------------------

expiresdefault m3600

expiresdefault "access plus 2 day"

---------------------------------------

檢視浏覽器和伺服器互動比較好的工具是httpwatch pro,現在的版本4.1,支援ie7

mod_ext_filter

使用外部程式作為過濾器

提供檔案描述符緩存支援,進而提高apache性能

mod_headers

允許通過配置檔案控制任意的http請求和應答頭資訊

header 指令  配置http應答頭

requestheader 指令 配置http請求頭

mod_ident

實作rfc1413規定的ident查找

identitycheck 指令  啟用對遠端使用者的rfc1413身份鑒定的日志

identitychecktimeout 指令 設定ident請求逾時

mod_info

生成apache配置情況的web頁面

addmoduleinfo 指令 為server-info處理器顯示的子產品增加額外資訊

--------------------------------------------------

<location /server-info>

sethandler server-info

order deny,allow

deny from all

allow from yourcompany.com

</location>

mod_rewrite

loadmodule rewrite_module modules/mod_rewrite.so

======================================================

參考:

http://www.phpchina.com/manual/apache/mod/index.html