Sun Java System Web Server 7.0 Update 3 管理員指南

開發 FastCGI 應用程式

您可以使用 Perl、PHP、C 和 Java 開發 FastCGI 應用程式。下列小節簡要說明使用一些常用程式設計語言開發應用程式的程序。

Procedure執行 FastCGI 應用程式

  1. 停止 Web 伺服器。

  2. 重新啟動 Web 伺服器。

  3. 存取以「fcgi」做為應用程式根的應用程式。

    例如: http://localhost/fcgi/ListDir.php

FastCGI 應用程式結構

一般 FastCGI 應用程式具有以下程式碼結構:

Initialization code

Start of response loop
		body of response loop
End of response loop

初始化程式碼僅在應用程式初始化時執行一次。初始化程式碼通常執行一些耗時作業,例如開啟資料庫或者計算表格或點陣圖的值。將 CGI 程式轉換為 FastCGI 程式的主要作業,是區分初始化程式碼與針對每個請求都需要執行的程式碼。

回應迴圈會持續執行,等待用戶端請求到達。迴圈以呼叫 FCGI_Accept (FastCGI 程式庫中的常式) 開頭。FCGI_Accept 常式將封鎖程式執行,直到用戶端請求 FastCGI 應用程式為止。收到用戶端請求時,FCGI_Accept 將解除封鎖、執行回應迴圈主體的一次重複運算,之後再次封鎖,等待另一個用戶端請求。僅當系統管理員或 Web 伺服器強制結束 FastCGI 應用程式時,此迴圈才會終止。

使用 Perl

從 CPAN 下載並安裝最新的 FCGI 模組。就 ActivePerl 而言,您可以從 http://aspn.activestate.com/ASPN/Downloads/ActivePerl/PPM/Zips 下載模組。

如需有關使用 Perl 撰寫 FastCGI 應用程式的更多資訊,請參閱 http://www.fastcgi.com/#TheDevKit

使用 PHP

從 PHP 4.3.0 開始,FastCGI 成為 PHP 引擎支援的配置。若要編譯支援 FastCGI 之 PHP 4.3.x 或更高版本的引擎,請將配置切換 --enable-fastcgi 納入建立程序,例如


./configure <other-options> --enable-fastcgi
gmake

編譯完成後,php 二進位檔將啟用 FastCGI。

當使用 PHP 版本 5.1.2 或舊版 (包括 PHP 4.x) 時,應使用 host: port 格式配置 FastCGI 外掛程式。例如,bind-path = “localhost: 3333”。

對於 PHP 版本 5.1.3 及更高版本,bind-path 是可選擇的。如果已指定,則不應使用「host: port」格式。它可以是一個字串。例如,bind-path = “myphpbindpath”。

使用 C/Java

FastCGI 開發工具組提供撰寫 FastCGI C/Java 應用程式的 API。您可以從 http://www.fastcgi.com/devkit/doc/fcgi-devel-kit.htm 下載工具組。

若要建立下載的 FastCGI 開發套件,請執行下列步驟:

  1. 解壓縮 tar 檔案。此動作將建立名為 fcgi-devel-kit 的新目錄

  2. fcgi-devel-kit 目錄中執行此指令序列:

    1. ./configure

    2. make

如需有關使用 C 撰寫 FastCGI 應用程式的更多資訊,請參閱 http://www.fastcgi.com/devkit/doc/fcgi-devel-kit.htm#S3

如需有關使用 Java 撰寫 FastCGI 應用程式的更多資訊,請參閱 http://www.fastcgi.com/devkit/doc/fcgi-java.htm