亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡,我們將竭誠為您提供優(yōu)質(zhì)的服務! 誠征網(wǎng)絡推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯(lián)系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業(yè)務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發(fā)消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術(shù)支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

Apache服務器中SSI和CGI設定方法

添加時間:2013-5-15 22:55:10  添加: 思海網(wǎng)絡 
由于Apache具有相當高的可移植性,它支持超過30種操作系統(tǒng),包括Unix、Windows 及Darwin等系統(tǒng),所以目前在網(wǎng)絡上已注冊的網(wǎng)域里大部份是使用Apache網(wǎng)頁服務器。目前ApacheSoftware Foundation 正致力于發(fā)展現(xiàn)在已進入alpha測試階段的Apache2.0。在這里,我和大家探討如何修改服務器選項讓服務器能提供簡單的動態(tài)網(wǎng)頁內(nèi)容,也就是支持CGI程序及 Server-Side Include(SSI)程序。

  1、準備工作

  首先,我假設你已經(jīng)安裝好Apache而且你的Apache能提供靜態(tài)網(wǎng)頁供瀏覽。Apache的安裝會自動附上靜態(tài)的HTML測試頁,也就是說如果能看到那測試頁,就代表你的Apache能正常運作了。基本安裝下的Apache僅能提供靜態(tài)的HTML網(wǎng)頁。然而,你可以通過使用模塊(modules)來提升它的功能。在原始的設定下,Apache的編譯會包含mod_include 及 moc_cgi 這兩個模塊。你可以在bin子目錄下執(zhí)行./httpd -l來查看你的Apache是否裝有這兩個模塊。執(zhí)行的輸出會是一長串Apache現(xiàn)在安裝的所有模塊。如果mod_include及moc_cgi 這兩個模塊不在清單里,你必須重新編譯服務器。重新編譯時,確定依照如何含括 mod_include、moc_cgi 模塊的說明。此外你還必需有提供實時網(wǎng)頁的Server-Side Includes(相關(guān)資料網(wǎng)址:http://www.oreilly.com/catalog/apache/excerpt/ch10.html)。有了 server-side includes (SSI)支持,你就能制作出實時的動態(tài)網(wǎng)頁。接下來,我先從服務器的SSI支持設定開始,然后進入CGI的編寫。

  2、Apache的設定

  首先你必須先找到Apache這個設定文件。Apache的原始安裝目錄在 Unix下是/usr/local/apache,在Windows下則是 c:Program FilesApache。接著在conf子目錄下你會找到httpd.conf 文件。這就是Apache的設定檔。這個設定文件是個純文字文件,所以你可以使用一般的文字編輯器,如vi或Notepad 等,來編輯。首先要注意的是在這個設定檔里有些行的起始文字是#符號,這表示這行的文字全為批注。適當?shù)卦谀愕脑O定檔內(nèi)做批注是個好習慣,因為那幫你記得你曾做了哪些設定以及為什么。

 3、執(zhí)行 SSI 程序

  開啟設定文件并尋找以下這些文字:

#
# To use server-parsedHTMLfiles
#
#AddType text/html .shtml
#AddHandler server-parsed .shtml

  刪除AddType及AddHandler這兩行指令前的#符號。AddType指令會要求服務器在傳回任何附屬檔名為.shtml的網(wǎng)頁時,以 text或HTML做為傳回文件的內(nèi)容格式。AddHandler 則是用來指示服務器將文件內(nèi)容送交給mod_include 處理。之后,mod_include 就會判斷該如何響應這樣的文件。接下來,尋找以下文字:

  在這行文字及對應的 間會有一行選項行(options line)。原始的設定是:

  Options Indexes FollowSymLinks MultiViews

  在這行尾端加上Includes ,結(jié)果看起來會是這樣:

  Options Indexes FollowSymLinks MultiViews Includes

  這是要求Apache在htdocs子目錄里執(zhí)行 server-side includes 程序。為了讓這些修改生效,我們必須重新啟動服務器。在 Unix 下重新激活,執(zhí)行"kill -HUP `cat /usr/local/apache/logs/httpd.pid`"。在 Windows 下,執(zhí)行"Apache-k restart"。現(xiàn)在我們來試試剛才的設定結(jié)果。在/usr/local/apache/htdocs 目錄里新增一個文件 test.shtml。這個文件必須要包含以下程序代碼:

  The file hello.txt is long and it was last modified on

  這段 SSI 程序會去讀取一個稱為 hello.txt 文件,并將該文件的大小以及最近一次的修改日期輸出到網(wǎng)頁上。顯然的,我們還必須在 htdocs 目錄下新增這個hello.txt 文件。在我的hello.txt 文件里只有一行文字:HOW ARE YOU!。完成新增這些文件后,打開你慣用的瀏覽器并開啟http://localhost/test.shtml網(wǎng)頁。如果你服務器的安裝并不是通過root用戶,你可能必須改為開啟http://localhost:8080/test.shtml。之后將得到如下結(jié)果:

 HOW ARE YOU! The file hello.txt is 1k bytes long and it was last modified on Wednesday, 02-Aug-2000 20:18:28 PDT

  另外一種可以激活支持SSI程序的方法稱為XbitHack設定(相關(guān)資料網(wǎng)址:http://www.apache.org/docs/mod/mod_include.html#xbithack )。這個方法的由來是當你將文本文件的使用者可執(zhí)行位(user-executable bit)設為可執(zhí)行狀態(tài)后,Apache會將那些文件視為 SSI 程序文件。

  要激活這樣的功能必須將以下指令(directive)放在所有目錄的 .htaccess 文件里:XbitHack status on (or full) status 的值可以設為on 、off 或是full。on 的設定會強制服務器將所有使用者可執(zhí)行的文件視為SSI項。Off則使服務器完全忽略使用者可執(zhí)行的設定狀態(tài)。若是設定為Full,服務器會視所有使用者可執(zhí)行檔為SSI項,同時也會檢查組可執(zhí)行(group-executable bit)。如果組可執(zhí)行項設定為可執(zhí)行時,傳回header的last modified time的值就會被設定為該文件最近一次被修改的時間。這樣的設定可以讓客戶端的瀏覽器及代理服務器(proxy)進行緩存(caching)。不過在使用這樣的功能時必須要小心。例如說,如果你的網(wǎng)頁有提供輪替式廣告看板你就不會想要設定群組可執(zhí)行位為開啟的狀態(tài),因為那么做會讓第一個下載的廣告被快取起來,導致使用者再也看不到其它頁的廣告。

  4、執(zhí)行CGI程序

  在Apache原始安裝里,cgi-bin子目錄下附有兩組CGI程序,test-cgi 以及printenv,只不過這兩組程序有潛在的安全漏洞。但是由于我們只是要做設定測試,并且我們不會將這樣的原始安裝設定直接放在主運行服務器(live server),所以我們還是會激活其中一組CGI程序,看看Apache當初是如何被設定來執(zhí)行這組程序。最后我們會自己撰寫一支簡單的CGI程序。

  首先,要確定這組程序是能執(zhí)行的。進入cgi-bin子目錄,確定程序文件被設定為使用者(服務器執(zhí)行時使用者)可執(zhí)行以及使用組(服務器執(zhí)行時使用組)可執(zhí)行。對 Windows系統(tǒng)來說,這一步應該是非必要的。接著,對服務器要求這樣的內(nèi)容:

  http://localhost:8080/cgi-bin/test-cgi

  注意:只有在通過非root使用者進行服務器安裝的情況下才需要指定8080端口(port)。這支Apache內(nèi)建的test-cgi程序會列出CGI程序會存取的變量值。激活CGI支持是設定在httpd.conf設定文件內(nèi)的Alias 指令區(qū)段。這個指令區(qū)段的原始設定值是:

  Alias /cgi-bin/ "/usr/local/apache/cgi-bin/"

  這行指令是告訴Apache如果要求的網(wǎng)頁路徑是以cgi-bin為起始,這些文件可在/usr/local/apache/cgi-bin/ 目錄下找得到。這行指令同時也告訴Apache要在這個目錄下執(zhí)行文件。在下面我準備了一個會輸出"How are you!"的簡單CGI程序。我將它命名為 how.sh。

#!/bin/sh
echo "Content-type: text/html"
echo
echo "How are you!"

  修改這個文件的權(quán)限使其成為可執(zhí)行文件并且向你的服務器提出以下的要求:

  http://localhost:8080/cgi-bin/how.sh

  雖然這組CGI是采用shell 來編寫,其實它可以用任何適用于該系統(tǒng)的語言來撰寫。至于關(guān)于CGI程序的撰寫如果有機會我會和大家作更深入的探討。

  結(jié)論:

  Apache支持的所有SSI 指令可以在Apachedocumentation 里找到,Apache所有的功能都可以通過設定文件 (config file)進行調(diào)試。在這里我所介紹的僅只是設定文件相關(guān)知識的皮毛。設定文件的原始設定有著非常詳盡的說明文件,而且每一個系統(tǒng)版本都附有核心模塊及標準模塊的說明文件,如果你花些時間在這些文件里摸索,你會找到任何你想要的功能。

關(guān)鍵字:Apache、服務器

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國增值電信業(yè)務經(jīng)營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網(wǎng)站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網(wǎng)安 舉報有獎  警警  手機打開網(wǎng)站