環境變數???
這是什麼東西?在客戶端(client)及伺服器端(server)溝通的過程中,
client 會將許多己經定義好的資料傳送給server端用以建立通訊過程中
所需的資訊,而server 端相對的也會回應特定的資料給予建立連接的
client端,這些在client 及server 端進行交換的資料,就是我們通稱
的環境變數.
我們稍微修改一下returnName.php 來取得所有client端的環境變數
並將它顯示在網頁上
2010年9月18日 星期六
CGI 如何工作
網頁程式是由一系列的HTML,CSS.JAVASCRIPT 和程式語言所構成
,例如在Windows 平台很有名的 asp.net,c#..及通用平台上也是
世界最多開發者所使用的 php.
我們常講的網頁程式其實主要包括了兩大部份
伺服器端:
指的是由網頁伺服器軟體所運行的一台主機,用以提供各式各樣的服務
像是網路購物,部落格,新聞媒體,搜尋服務....等,一般以apache和
iis佔大部份
客戶端:
指是的一般使用者的所用的上網設備,通常是個人電腦裡的瀏覽器包含
ie,firefox,chrome......
那客戶端如何和伺服器端進行溝通呢?
主要是透過網際網路協定裡的Http 協定,也就是常聽到的WWW,80port
80 Port是指 Http 協定運行所使用的端口號碼,這個號碼是由IANA所
制定的,在1-1024 號碼裡的端口,通常都由特定的協定使用而不可被佔用
,例如 SSH-22,WWW-80,FTP-21,20,SMTP-25,POP3-110.......
,而CGI是在HTTP上所運行的一個通訊介面,由客戶端送出一個 Request,
再由伺服器端回應一個 Response而成
以下所有的範例,我們將以php做簡單的程式,來講述CGI的運行方式
一個最簡單的CGI,在getName.php裡我們以POST的方法,將使用者輸入的
姓名傳送至後方的SERVER端,在後方的伺服器端,則以一個變數name取得客
戶端傳送來的資料,並將其顯示在頁面中
getName.php
<?php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>First CGI example</title>
</head>
<body>
<form method="post" action="returnName.php">
Please enter your name:<input type="text" name="name" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
?php>
returnName.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Return your name</title>
</head>
<body>
$name = $_POST['name'];
<h2>Your name is . $name</h2>
</body>
</html>
,例如在Windows 平台很有名的 asp.net,c#..及通用平台上也是
世界最多開發者所使用的 php.
我們常講的網頁程式其實主要包括了兩大部份
伺服器端:
指的是由網頁伺服器軟體所運行的一台主機,用以提供各式各樣的服務
像是網路購物,部落格,新聞媒體,搜尋服務....等,一般以apache和
iis佔大部份
客戶端:
指是的一般使用者的所用的上網設備,通常是個人電腦裡的瀏覽器包含
ie,firefox,chrome......
那客戶端如何和伺服器端進行溝通呢?
主要是透過網際網路協定裡的Http 協定,也就是常聽到的WWW,80port
80 Port是指 Http 協定運行所使用的端口號碼,這個號碼是由IANA所
制定的,在1-1024 號碼裡的端口,通常都由特定的協定使用而不可被佔用
,例如 SSH-22,WWW-80,FTP-21,20,SMTP-25,POP3-110.......
,而CGI是在HTTP上所運行的一個通訊介面,由客戶端送出一個 Request,
再由伺服器端回應一個 Response而成
以下所有的範例,我們將以php做簡單的程式,來講述CGI的運行方式
一個最簡單的CGI,在getName.php裡我們以POST的方法,將使用者輸入的
姓名傳送至後方的SERVER端,在後方的伺服器端,則以一個變數name取得客
戶端傳送來的資料,並將其顯示在頁面中
getName.php
<?php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>First CGI example</title>
</head>
<body>
<form method="post" action="returnName.php">
Please enter your name:<input type="text" name="name" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
?php>
returnName.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Return your name</title>
</head>
<body>
$name = $_POST['name'];
<h2>Your name is . $name</h2>
</body>
</html>
何謂CGI
為何要談CGI? Google App Engine 和 CGI 有何關係?
CGI(common gateway interface)
CGI 是一個很老介面,通常用於網頁程式和後方伺服器的通訊連結使用
在現今的程式語言裡,很少看到純 CGI的程式,不過大多數的程式語言
裡,也都還支援類似CGI的語法,像是和伺服器溝通的GET,POST就是我
們常看到的 CGI語法,而GOOGLE APP ENGINE 本身以python語言
為主的開發,而Python裡的標準函式庫的WSGI(Web Server Gateway
Interface)其實就是一種類似CGI的規格.所以在開始的篇幅,我想
先以CGI 做個起始的入門點,一步一步地建構起對GOOGLE APP ENGINE
的了解及實作藍圖.
目的
主要用法網頁頁面中表單的傳送資料(Request)和接收來自伺服器回
應的資料(Response),以利程式能順利的進行下去
限制
CGI 執行環境必須要有一個網頁伺服器,網頁伺服器也必須允許CGI
執行,常代表的程式語言為 PHP,ASP...
CGI(common gateway interface)
CGI 是一個很老介面,通常用於網頁程式和後方伺服器的通訊連結使用
在現今的程式語言裡,很少看到純 CGI的程式,不過大多數的程式語言
裡,也都還支援類似CGI的語法,像是和伺服器溝通的GET,POST就是我
們常看到的 CGI語法,而GOOGLE APP ENGINE 本身以python語言
為主的開發,而Python裡的標準函式庫的WSGI(Web Server Gateway
Interface)其實就是一種類似CGI的規格.所以在開始的篇幅,我想
先以CGI 做個起始的入門點,一步一步地建構起對GOOGLE APP ENGINE
的了解及實作藍圖.
目的
主要用法網頁頁面中表單的傳送資料(Request)和接收來自伺服器回
應的資料(Response),以利程式能順利的進行下去
限制
CGI 執行環境必須要有一個網頁伺服器,網頁伺服器也必須允許CGI
執行,常代表的程式語言為 PHP,ASP...
訂閱:
意見 (Atom)