通過CGI實現在Web頁面上執行shell命令

2021-09-29 23:12:44 字數 3134 閱讀 2432

使用命令安裝 yum install httpd命令安裝

#安裝成功我們可以看到在/var/目錄下會產生乙個www的目錄,該目錄下還包含/cgi-bin/ /html/連個目錄

cgi-bin目錄下主要存放cgi檔案

html目錄下主要存放html網頁檔案

此時可啟動httpd服務,檢視啟動後的狀態;

伺服器通常會有乙個www/cgi-bin的目錄,我在這個目錄下放乙個shell指令碼,名為liu.sh,記得給執行許可權。

[root@vm_0_17_centos cgi-bin]

# vim liu.sh

[root@vm_0_17_centos cgi-bin]

# chmod 777 liu.sh

[root@vm_0_17_centos cgi-bin]

# cat -n liu.sh

1 #!/bin/sh

2 alias urldecode=

'sed "s@+@ @g;s@%@\\\\x@g" | xargs -0 printf "%b"'

3 echo -e "content-type: text/html\n"

4 decoded_str=

`echo $query_string | urldecode`

5 echo

`$decoded_str`

[root@vm_0_17_centos cgi-bin]

#

第1句表示是shell指令碼,shell是預設的指令碼

第2句我網上抄的,具體原理也不懂,作用是解碼url, 當url中有空格時,從客戶端傳過來會變成%20, 20是空格的16進製制ascii碼。

第3句是必須的,否則在客戶端呼叫時就出錯,是http協議規定的。text/html是以html的形式輸出,比如就會在頁面上顯示乙個文字框。text/plain形式就會在頁面上原樣顯示這段**。

第4句就是將url解碼

第5句是執行命令並返回給客戶端

然後在web網頁輸入 會在網頁上顯示內容

就不是很好看,然後我先寫乙個html檔案,放在www/html資料夾下,命名為hjw.html

#在web瀏覽器中輸入在方框輸入命令下面就直接顯示結果,也就是上面的乙個包裝。

到此就應該可以實現將伺服器執行結果顯示到網頁上。

Web頁面上的控制項

web頁面,即 aspx檔案 頁面的根目錄下,分為了5部分 0 1 2 3 4 內容依次為 0 1 2 3 4 所以,在遍歷所有頁面上的控制項的時候,就在this.controls 3 中找.問題 遍歷web頁面上所有的textbox,並全部設定為1111 protected void btn cl...

第六講 實現在頁面上修改或新增服務配置

如何在頁面上修改或新增服務配置?在頁面上的每乙個輸入框都對應著 xml 檔案中的乙個 name value 我們可以通過 resource management 依賴包內的方法來獲取對應屬性的 value 值。在頁面上修改服務配置有兩種方式,根據我們的需求來選擇需要哪一種。1 約定俗稱 在 pack...

js在web頁面上繪製圓形

在web頁面上,想要畫出乙個圓形,方法有很多,svg canvas都可以繪圖。但是本文不採用這兩種方式,而是使用乙個div。div一般是乙個矩形,但是如果設定乙個圓角樣式border radius就可以將div變成圓形。圓的位置需要在畫布中絕對定位 position absolute 也就是通過設定...