CGI腳本可以是簡單的,也可以是複雜的。它可以是Perl、Java、Python或任何程式語言。在其核心,CGI應用程式只是透過HTTP(通常是web瀏覽器)接受請求並傳回HTML。讓我們來看一個簡單的Perl Hello World CGI腳本,並將其分解為最簡單的表單。
'Hello World'CGI Perl腳本
#!/usr/bin/perl print "Content-type: text/html\n\n"; print <<HTML; <html> <head> <title>A Simple Perl CGI</title> </head> <body> <h1>A Simple Perl CGI</h1> <p>Hello World</p> </body> HTML exit;
如果您在命令列上運行該程序,您將看到它所做的正是您所期望的。首先,它會列印內容類型行,然後列印原始HTML。為了在web瀏覽器中看到它的運作情況,您需要將腳本複製或上載到web伺服器,並確保權限設定正確(*nix systems上的chmod 755)。一旦設定正確,您應該能夠瀏覽到它,並在伺服器上看到即時顯示的頁面。
關鍵行是第一個print語句:
print "Content-type: text/html\n\n";
這告訴瀏覽器,這兩個換行之後的文件將是HTML。您必須傳送一個標題,以便瀏覽器知道接下來的文件類型,並且必須在標題和實際文件之間包含空白行。
傳送頭之後,只需要傳送HTML文件本身。在上面的例子中,我們使用here-doc來簡化列印一大塊純文字。當然,這與伺服器上有一個純HTML文件沒有什麼不同。當您加入一些奇特的Perl程式設計時,使用Perl之類的程式語言來創建HTML的真正威力就來了。
新增到基本腳本
在下一個範例中,讓我們使用這個時間和日期腳本的一部分,並將其新增到web頁面。
#!/usr/bin/perl @months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); @weekDays = qw(Sun Mon Tue Wed Thu Fri Sat Sun); ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime(); $year = 1900 + $yearOffset; $theTime = "$weekDays[$dayOfWeek] $months[$month] $dayOfMonth, $year"; print "Content-type: text/html\n\n"; print <A Simple Perl CGI A Simple Perl CGI
$theTime
HTML exit;
這個新的CGI腳本將在每次呼叫腳本時將當前日期插入頁面。換句話說,它變成了一個隨著日期變化而變化的動態文檔,而不是靜態文檔。
以上是如何創建一個簡單的Perl CGI的詳細內容。更多資訊請關注PHP中文網其他相關文章!