分類:
#表示開啓了索引模式(也就是目錄瀏覽)
Options Indexes
indexOptions FancyIndexing ScanHTMLTitles NameWidth=128 DescriptionWidth=256 HTMLTable VersionSort FoldersFirst
可用參數,含義如下:
#ScanHTMLTitles:搜索HTML標題
#NameWidth:文件命顯示字節數
#DescriptionWidth:描述顯示字節數
#HTMLTable:允許HTML格式
#FoldersFirst:目錄優先
SuppressLastModified 在目錄中禁止顯示最近的修改時間
#索引排除語法
IndexIgnore header.html footer.html
header.html footer.html 這兩個文件不會在索引(目錄瀏覽)中出現。
#索引頭部嵌入文件
HeaderName /data/index/header.html
#索引底部嵌入文件
ReadmeName /data/index/footer.html
ReadmeName: 指定該目錄列表的footer模板,指定一個html文件後,Apache會在目錄列表的底部加載這個網頁。(注意:文件路徑是相對於列表目錄的根而言的,並不是相對於系統根或者網站根。)
HeaderName: 指定該目錄列表的header模板,指定一個html文件後,Apache會用這個網頁替換掉默認目錄列表上面呆板的Index of …..。(注意:文件路徑是相對於列表目錄的根而言的,並不是相對於系統根或者網站根。)
#默認索引排序方式
IndexOrderDefault Ascending Date
#關閉服務器標誌
ServerSignature Off
Apache一目錄索引顯示風格定製
在Apache中有目錄索引是由mod_autoindex模塊負責完成的。它把當前目錄結果轉換成html頁面。在默認情況下,有很多地方讓人感覺不 爽,比如文件名寬度太窄(只有可憐的23字節),圖標太大,有點傻傻的,好多文件類型沒有關聯。幸好Apache開發人員早就想到這一點,提供了讓用戶定 制的命令。官方詳細介紹可以去上面的超鏈去看看。
索引風格控制命令:
IndexOptions Directive //Dirctive 是命令選項,見下面實例
下面介紹常用的設置(都寫在httpd.conf文件中):
修改自動目錄索引的寬度
缺省設置下,Apache默認每欄寬度是23字節,對於文件名來說,實在是太短了。一般要求60字節
IndexOptions NameWidth=60
修改圖標尺寸
系統默認好像是24,經過試驗,發現16的效果比較好。
IndexOptions IconHeight=16
IndexOptions IconWidth=16
目錄優先
系統默認是文件優先,和我們平時的習慣不一致。改過來。
IndexOptions FoldersFirst
版本排序
無須多說,加上吧。對於中文來說,是按照拼音順序排序的。
IndexOptions VersionSort
圖標優化
默認的圖標有不少比較難看,而且還有很多文件類型就沒有圖標,由於Solaris不支持Microsoft定義的各種文檔類型,顯示這些文件時都用問號圖標表達,或許代表Sun對Microsoft的態度,不過我可不這麼認爲,凡事還是清楚點好。
定製文件圖標分兩步,先用圖標工具抓取常用圖標,象Word,Excel,Powerpint,Rar,Pdf。另外,默認的目錄圖標看上去也不爽,乾脆 把 Window的那套東西都搬過來。完成後,把這些圖標(格式爲gif或png)全部存到/usr/local/apache2/icons目錄下。對於目 錄圖標,我直接用微軟的圖標替換了那個名字叫folder.gif的文件。
接下來,用AddIcon命令把圖標和文件類型關聯起來。
AddIcon /icons/word.gif .doc .DOC
AddIcon /icons/excel.gif .xls .XLS
AddIcon /icons/rar.gif .rar .RAR
AddIcon /icons/srm.gif .srm .SRM
AddIcon /icons/powerpoint.gif .ppt .PPT
AddIcon /icons/access.gif .mdb .MDB
上面是我喜歡的文件類型,注意可別忘了大小寫都加上哦。
完成後,重新啓動apache,哈哈,終於看到了。可是,有幾個類型還是沒有顯示出來L,它們是:rar,srm,mdb。
又仔細分析了一下配置文件,發現可能和文件類型有關。
Apache有一個專門負責文件類型的文件:mime.types,裏面爲每個文件進行了詳細分類。比如有:application,image,audio,video。在裏面狂搜了一遍,沒有上面的那三個類型,於是在前面增加如下定義:
# MIME type Extensions
application/winrar rar
application/srm srm
application/access mdb
重新啓動apache,OK。
Apache目錄索引的簡易配置
使用Apache配置簡易的目錄索引,登錄者可以方便瀏覽、下載目錄之下的內容。
過程:(以下均爲有root權限時的操作)
1.安裝apache:pacman -S apache
2.配置apache:vi /etc/httpd/conf/httpd.conf
#管理員的E-mail,出錯時發送錯誤的郵件地址
ServerAdmin [email][email protected][/email]
#服務器名,沒有域名就寫IP
ServerName My IP:80
#主目錄地址
DocumentRoot “/path/to/server”
#設置默認主目錄的權限,下面需要用到
Order deny,allow
Allow from all
#使用別名,將系統絕對路徑轉換爲相對於DocumentRoot的相對路徑
Alias /home “/home/httpd”
#配置瀏覽目錄的選項
#選項爲索引方式
Options Indexes
#索引選項,目錄優先
IndexOptions FancyIndexing FoldersFirst
#索引排除選項
IndexIgnore header.html footer.html
#索引頭部嵌入文件(只可使用相對http主目錄的相對路徑,而不是系統的絕對路徑)
HeaderName /home/html/header.html
#索引底部嵌入的文件(同上,”/home”使用了別名,同時要爲那個目錄設置權限)
ReadmeName /home/html/footer.html
#關閉服務器標誌
ServerSignature Off
#使用.htaccess文件可以得到的控制水平
AllowOverride None
#控制訪問權限
Order allow,deny
Allow from all
所作的修改就這麼多,其它的都是系統默認,不考慮安全、性能等,基本能正常跑起來了。
3.運行apache:httpd -k start
簡單的配置就這麼多,Apache的配置和組合還有好多好多,以後再細細研究
個性化Apach2目錄列表
個性化Apach2目錄列表,主要取決於對modautoindex模塊中的各種指令的使用和配合。可以去先閱讀一下Apache2.0手冊中的modautoindex模塊文檔。
文檔地址: [url]http://httpd.apache.org/docs/2.0/mod/mod_autoindex.html[/url]
在開始之前,請看一個個性化目錄列表的演示地址: [url]http://nanu.8866.org/download[/url]
下面,我們就開始動手:
一、修改httpd.conf文件
對需要個性化的目錄進行定製:
<Directory “/www/download”>
Options Indexes FollowSymlinks
IndexOptions FancyIndexing ScanHTMLTitles NameWidth=25 DescriptionWidth=128 VersionSort FoldersFirst
IndexIgnore favicon.ico header.html footer.html images
HeaderName header.html
ReadmeName footer.html
AddDescription “Qmail安裝包” qmail.tar.gz
AddDescription “Putty0.58” putty.exe
AddDescription “我的MSN頭像:P” msn.gif
IndexOrderDefault Ascending Name
AllowOverride None
Order allow,deny
Allow from all
< /Directory>
部分指令說明:
ScanHTMLTitles:如果目錄中含有HTML文件,則Apache會自動讀取HTML文件的<title>……部分,用HTML文件的標題作爲Description(描述)顯示在列表目錄中的 Description部分。。(注意:加載該指令會加大CPU的負荷!)
NameWidth=25 :指定目錄列表可以顯示最長爲25字節的文件/目錄名,如果使用*來做值,會自適應到最長文件名。
DescriptionWidth=128:指定目錄列表可以顯示最長爲128字節的文件/目錄描述內容。
VersionSort:如果目錄中含有同一文件的不同版本,則Apache會對該文件按照版本號自動排序。
FoldersFirst:最先列出文件夾會使顯示效果更好看一些吧!
IndexIgnore:在它後面設定的文件/目錄不會在目錄列表中顯示。
HeaderName:指定該目錄列表的header模板,指定一個html文件後,Apache會用這個網頁替換掉默認目錄列表上面呆板的 Index of …..而顯示出個性化的頭網頁。(注意:文件路徑是相對於列表目錄的根而言的,並不是相對於系統根或者網站根而言的!)
ReadmeName:指定該目錄列表的footer模板,指定一個html文件後,Apache會在目錄列表的底部加載這個網頁。(注意:文件路徑是相對於列表目錄的根而言的,並不是相對於系統根或者網站根而言的!)
AddDescription:如果你想爲某個文件設置一個Description(描述)的話,就使用這個指令,格式是AddDescription “描述” 文件名 。
IndexOrderDefault Ascending Name:指定目錄列表的排序方式爲按名稱排序。
當然,還可以定製很多其他的內容,包括可以爲每一個文件設定一個圖標等等,去讀文檔吧。
二、建立header.html和footer.html
這兩個文件是列表目錄的頭網頁和尾網頁,也是個性化的關鍵。其實這部分和Apache水平已經沒有什麼關係了,主要還是看你製作網頁水平如何了,呵呵。
這裏給出兩個文件的格式:
header.html:
<!– 個性化內容開始 –>
可以在這裏加入個性化內容,圖片、FLASH、表格等等,隨意啦!
<!– 個性化內容結束 –>
< !– 嵌入列表目錄 –>
< table>
< td>
< tr>
footer.html:
</tr>
< /td>
< /table>
< !– 目錄列表嵌入結束 –>
< !– 個性化內容開始 –>
可以在這裏加入個性化內容,圖片、FLASH、表格等等,隨意啦!
<!– 個性化內容結束 –>
可以看出,其實個性化的原理就是把Apache的目錄列表嵌在了header.htm的<\table>< \tr><\td>與footer.html的<\/td><\/tr><\/table>之 間,兩個文件的其他部分都可以自定義內容的。
建立好這兩個文件後,就可以重啓apache,看看自己的定製的目錄有多漂亮吧!