管理及程式設計指南


為 FastCGI 架構 Net.Data

Net.Data 可在 Apache Web Server 及 Domino Go Webserver 上以 FastCGI 處理形式執行。 FastCGI 採用 CGI 應用程式隔離功能,對其它 Web API 程式提供類似的效能。 AIX 及 Sun Solaris 作業系統支援 FastCGI。

使用 FastCGI 之前,請先確定已安裝 Apache Web Server 1.2.0 或更新版本,或 Domino Go Webserver 4.6.2.5 或更新版本。

若要為 FastCGI 架構 Net.Data:

  1. 為您的作業系統架構 Web 伺服器和 FastCGI 架構檔:

    對於 Apache Web 伺服器:
    更新 http.conf 檔案。
    • 宣告新的應用程式:
      AppClass inst_dir
      -processes proc_num
      -initial-env LIBPATH=libpath
      -initial-env ORACLE_HOME=oracle_path
      -initial-env ORACLE_SID=oracle_instance
      -initial-env DB2INSTANCE=db2_instance
      -initial-env RXQUEUE_OWNER_PID=REXX_perf_var
      -initial-env LANG=locale
       
      
    • 宣告 FastCGI 模組:
      <location /fcgi-bin>
      SetHandler fastcgi-script
      </location>
      

    對於 Domino Go Webserver:
    更新 httpd.conffcgi.conf 檔案:
    • httpd.conf 檔案中,宣告服務程式區段:
      ServerInit /u/mydir/http/fcgi-bin/fcgi.o:FCGIInit
      /u/mydir/http/fcgi.conf service/fcgi-bin/*
      /u/mydir/http/fcgi-bin/fcgi.o:FCGIDispatcher*ServerTerm
      /u/mydir/http/fcgi-bin/fcgi.o:FCGIStop
      
    • fcgi.conf 檔案中,宣告應用程式:
      Local {
      Exec inst_dir
      Role Responder
      URL /fcgi-bin/db2www
      BindPath /tmp/db2www.ibm
      NumProcesses proc_num
      Environ LIBPATH=libpath
      Environ ORACLE_HOME=oracle_path
      Environ ORACLE_SID=oracle_instance
      Environ DB2INSTANCE=db2_instance
      Environ RXQUEUE_OWNER_PID=REXX_perf_var
      Environ LANG=locale
      Environ NLSPATH=msg_catalog_path
      Environ MAXREQUEST=num_reqs
      }
      

    參數:

    inst_dir
    Net.Data 之可執行檔的路徑和目錄名稱。

    對於 Apache:

    AppClass /u/mydir/apache/fcgi-bin/db2www
    

    對於 Domino Go Webserver:

    Exec /u/mydir/http/fcgi-bin/db2www
    

    Role Responder
    Domino Go Webserver 專用的必要關鍵字。

    URL
    Domino Go Webserver 專用的必要關鍵字和 URD 位址。URL 指向 EXEC_PATH 陳述式所設定的路徑。

    BindPath
    AIX 上 Domino Go Webserver 專用的必要關鍵字和路徑。 Net.Data 和 FastCGI 所用之唯一 UNIX socket 的路徑。

    proc_num
    可同時處理的要求數。預設值是 1,但應該基於應用程式需求來增加,以改進執行效能。 有關調整的資訊,請參閱使用 FastCGI

    對於 Apache:

    -processes 7
    

    對於 ICS 或 Domino Go Webserver:

    NumProcesses 7
    

    libpath
    Net.Data 起始設定檔案中每一個 ENVIRONMENT 陳述式所宣告的 LIBPATH (共用程式庫或 DLL) 陳述式。 存取 DB2 時,LIBPATH 陳述式應該包含 DB2 程式庫目錄的路徑。 例如:

    /usr/lpp/db2_05_00/lib
    

    對於 Apache:

    -initial-env LIBPATH=/u/mydir/apache/lib:/u/mydir/apache:/usr/lib
    

    對於 Domino Go Webserver:

    Environ LIBPATH=/u/mydir/http/lib:/u/mydir/http:/usr/lib
    

    oracle_path
    使用 Oracle 時必備的。Oracle 資料庫可執行檔的路徑和目錄。

    對於 Apache:

    -initial-env ORACLE_HOME=/home.native/oracle/product/7.2
    

    對於 Domino Go Webserver:

    Environ ORACLE_HOME=/home.native/oracle/product/7.2
    

    oracle_instance
    使用 Oracle 時必備的。Oracle 資料庫的案例。 您須對 Oracle 使用「現場連線」。

    對於 Apache:

    -initial-env ORACLE_SID=mvpdb2 
    

    對於 Domino Go Webserver:

    Environ ORACLE_SID=mvpdb2
    

    db2_instance
    使用 DB2 時必備的。DB2 資料庫的案例。

    對於 Apache:

    -initial-env DB2INSTANCE=wwwinst
    

    對於 Domino Go Webserver:

    Environ DB2INSTANCE=wwwinst
    

    REXX_perf_var
    在 AIX 上使用 REXX 時必備的。該效能變數使用於 AIX 作業系統上的 FastCGI 和 REXX。 預設值是 0。對於其它產品和作業系統,請在 Net.Data 巨集中宣告這個變數。 這個變數的詳細資訊,請參閱附錄 B, Net.Data for AIX

    對於 Apache:

    -initial-env RXQUEUE_OWNER_PID=0
    

    對於 Domino Go Webserver:

    Environ RXQUEUE_OWNER_PID=0
    

    locale
    UNIX 語言環境變數。使用 En_US 表示美式英語。

    對於 Apache:

    -initial-env LANG=En_US
    

    對於 Domino Go Webserver:

    Environ LANG=En_US
    

    NLSPATH
    指定訊息型錄的目錄位置。

    對於 Apache:

    -initial-env NLSPATH=/usr/lib/nls/msg/%L/%N
    

    對於 Domino Go Webserver:

    Environ NLSPATH=/usr/lib/nls/msg/%L/%N
    

    MAXREQUEST
    指定 Web 伺服器在回收程序和啟動新程序之前, Net.Data Fast-CGI 程序所處理的要求數目。

    對於 Apache:

    -initial-env MAXREQUEST=5000
    

    對於 Domino Go Webserver:

    Environ MAXREQUEST=5000
    
  2. 對於 Apache: 在 srm.conf 檔案中, 新增 fgi-bin 目錄作為新的 script 別名: ScripAlias /fcgi-bin/ /u/mydir/apache/fci-bin
  3. 從 CGI-BIN 至 FCGI-BIN,移轉靜態或動態產生之網頁內的任何超鏈結。例如:
    <a href="http://server/fcgi-bin/db2www/filename.ext/block/
    [?name=val&...]">any text</a>
    
  4. 以 FCGI-BIN 代替 CGI-BIN,修正 Net.Data 有關 URL 呼叫的一般使用者文件。例如:
    http://server/fcgi-bin/db2www/filename.ext/block/[?name=val&...]
    


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]