靜態內容

  靜態內容很簡單,同時也很常見。讓我們快速的瀏覽一些靜態網頁的例子。你不需要一個可運行網站來執行這些小實驗,只需要把這些文件放到家目錄,然后使用瀏覽器打開。你所看到的內容將和通過Web服務器提供這一文件看到的內容一樣。

  對于一個靜態網站,你需要的第一件東西就是index.html文件,該文件通常放置在/var/www/html目錄下。這個文件的內容可以非常簡單,比如可以是像“Hello,world”這樣一句短文本,沒有任何HTML標記。它將簡單的展示文本串內容。在你的家目錄創建index.html文件,并添加“hello,world”作為內容(不需要引號)。在瀏覽器中通過下面的鏈接來打開這一文件:

  file:///home/<你的家目錄>/index.html

  所以HTML不是必須的,但是,如果你有大量需要格式化的文本,那么,不用HTML編碼的網頁的結果將會令人難以理解。

  所以,下一步就是通過使用一些HTML編碼來提供格式化,從而使內容更加可讀。下面這一命令創建了一個具有HTML靜態網頁所需要的絕對最小標記的頁面。你也可以使用你最喜歡的編輯器來創建這一內容。

  echo"<h1>HelloWorld</h1>">test1.html

  現在,再次查看index.html文件,將會看到和剛才有些不同。

  當然,你可以在實際的內容行上添加大量的HTML標記,以形成更加完整和標準的網頁。下面展示的是更加完整的版本,盡管在瀏覽器中會看到同樣的內容,但這也為更加標準化的網站奠定了基礎。繼續在index.html中寫入這些內容并通過瀏覽器查看。

  <!DOCTYPEHTMLPUBLIC"-//w3c//DDHTML4.0//EN">

  <html>

  <head>

  <title>MyWebPage</title>

  </head>

  <body>

  <h1>HelloWorld</h1>

  </body>

  </html>

  我使用這些技術搭建了一些靜態網站,但我的生活正在改變。

  動態網頁

  我找了一份新工作,這份工作的主要任務就是創建并維護用于一個動態網站的CGI(公共網關接口CommonGatewayInterfaceM)代碼。字面意思來看,動態意味著在瀏覽器中生成的網頁所需要的HTML是由每次訪問頁面時不同的數據所生成的。這些數據包括網頁表單中的用戶輸入,以用來在數據庫中進行數據查找,結果數據被一些恰當的HTML包圍著并展示在所請求的瀏覽器中。但是這不需要非常復雜。

  通過使用CGI腳本,你可以創建一些簡單或復雜的交互式程序,通過運行這些程序能夠生成基于輸入、計算、服務器的當前條件等改變的動態頁面。有許多種語言可以用來寫CGI腳本,在這篇文章中,我將談到的是PerlBash,其他非常受歡迎的CGI語言包括PHPPython

  這篇文章不會介紹Apache或其他任何web服務器的安裝和配置。如果你能夠訪問一個你可以進行實驗的Web服務器,那么你可以直接查看它們在瀏覽器中出現的結果。否則,你可以在命令行中運行程序來查看它們所創建的HTML文本。你也可以重定向HTML輸出到一個文件中,然后通過瀏覽器查看結果文件。

  使用Perl

  Perl是一門非常受歡迎的CGI腳本語言,它的優勢是強大的文本操作能力。

  為了使CGI腳本可執行,你需要在你的網站的httpd.conf中添加下面這行內容。這會告訴服務器可執行CGI文件的位置。在這次實驗中,不必擔心這個問題。

  ScriptAlias/cgi-bin/"/var/www/cgi-bin/"

  把下面的Perl代碼添加到文件index.cgi,在這次實驗中,這個文件應該放在你的家目錄下。如果你使用Web服務器,那么應把文件的所有者更改為apache.apache,同時將文件權限設置為755,因為無論位于哪,它必須是可執行的。

  #!/usr/bin/perl

  print"Content-type:text/htmlnn";

  print"<html><body>n";

  print"<h1>HelloWorld</h1>n";

  print"UsingPerl<p>n";

  print"</body></html>n";

  在命令行中運行這個程序并查看結果,它將會展示出它所生成的HTML內容

  現在,在瀏覽器中查看index.cgi文件,你所看到的只是文件的內容。瀏覽器需要將它看做CGI內容,但是,Apache不知道需要將這個文件作為CGI程序運行,除非Apache的配置中包括上面所展示的ScriptAlias定義。沒有這一配置,Apache只會簡單地將文件中的數據發送給瀏覽器。如果你能夠訪問Web服務器,那么你可以將可執行文件放到/var/www/cgi-bin目錄下。

  如果想知道這個腳本的運行結果在瀏覽器中長什么樣,那么,重新運行程序并把輸出重定向到一個新文件,名字可以是任何你想要的。然后使用瀏覽器來查看這一文件,它包含了腳本所生成的內容。

  上面這個CGI程序依舊生成靜態內容,因為它總是生成相同的輸出。把下面這行內容添加到CGI程序中“Hello,world”這一行后面。Perlsystem命令將會執行跟在它后面的shell命令,并把結果返回給程序。此時,我們將會通過free命令獲得當前的內存使用量。

  system"free|grepMemn";

  現在,重新運行這個程序,并把結果重定向到一個文件,在瀏覽器中重新加載這個文件。你將會看到額外的一行,它展示了系統的內存統計數據。多次運行程序并刷新瀏覽器,你將會發現,內存使用量應該是不斷變化的。

  使用Bash

  Bash可能是用于CGI腳本中最簡單的語言。用Bash來進行CGI編程的最大優勢是它能夠直接訪問所有的標準GNU工具和系統程序。

  把已經存在的index.cgi文件重命名為Perl.index.cgi,然后創建一個新的`index.cgi文件并添加下面這些內容。記得設置權限使它可執行。

  #!/bin/bash

  echo"Content-type:text/html"

  echo""

  echo\\\'<html>\\\’

  echo\\\'<head>\\\’

  echo\\\'<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">\\\’

  echo\\\'<title>HelloWorld</title>\\\’

  echo\\\'</head>\\\’

  echo\\\'<body>\\\’

  echo\\\'<h1>HelloWorld</h1><p>\\\’

  echo\\\’UsingBash<p>\\\’

  free|grepMem

  echo\\\'</body>\\\’

  echo\\\'</html>\\\’

  exit0

  在命令行中執行這個文件并查看輸出,然后再次運行并把結果重定向到一個臨時結果文件中。然后,刷新瀏覽器查看它所展示的網頁是什么樣子。

  結論

  創建能夠生成許多種動態網頁的CGI程序實際上非常簡單。盡管這是一個很簡單的例子,但是現在你應該看到一些可能性了。

 

 

更多關于云服務器域名注冊,虛擬主機的問題,請訪問三五互聯官網:m.shinetop.cn

贊(0)
聲明:本網站發布的內容(圖片、視頻和文字)以原創、轉載和分享網絡內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。郵箱:3140448839@qq.com。本站原創內容未經允許不得轉載,或轉載時需注明出處:三五互聯知識庫 » CGI腳本如何生成網頁

登錄

找回密碼

注冊

主站蜘蛛池模板: 亚洲av日韩av永久无码电影| 中文国产日韩欧美二视频| 少妇一边呻吟一边说使劲视频 | 久久中文字幕日韩无码视频| 成人国产精品日本在线观看| 诱人的老师hd中文字幕| 欧美性大战xxxxx久久久| 国产二区三区不卡免费| 精品国产av无码一区二区三区| 国产午夜影视大全免费观看| AV最新高清无码专区| 成人亚欧欧美激情在线观看| 少妇伦子伦情品无吗| 国产久免费热视频在线观看| 亚洲人成网站18禁止| 在线精品另类自拍视频| 熟妇啊轻点灬大JI巴太粗| 亚洲成a人片在线观看中文| 国产高清吹潮免费视频| 国产极品粉嫩尤物一线天| 国产美女午夜福利视频| 少妇被粗大的猛烈进出| 久久日韩精品一区二区五区| 在线精品自拍亚洲第一区| 99精品视频九九精品视频| 午夜福利国产区在线观看| 中文字幕色偷偷人妻久久| 人妻精品人妻无码一区二区三区| 在线播放国产精品亚洲| 99riav精品免费视频观看| 亚洲av第一区二区三区| 五月综合激情婷婷六月色窝 | 99精品免费久久久久久久久日本| 日韩成人午夜精品久久高潮| 亚洲色大成网站WWW尤物| 日韩精品亚洲专在线电影| 亚洲特黄色片一区二区三区| 久久午夜无码鲁丝片午夜精品| 商水县| 性欧美乱熟妇xxxx白浆| 久久天天躁夜夜躁狠狠85|