管理及程式設計指南


使用 Web 伺服器 API 來架構 Net.Data

使用 Web 伺服器應用程式設計介面 (API) 來代替 CGI,可明顯地改善 Net.Data 的執行效能。 Net.Data 支援下列伺服器 API:

有關每一個 API 的詳細資訊,請參閱使用 Web 伺服器 API 及您的 Net.Data 版本之 README 檔。

需求︰若要在 GWAPI、ISAPI 或 NSAPI 模式下執行 Net.Data, 您必須重新架構 Web 伺服器來使用 Net.Data DLL 或共用程式庫作為服務程式指引。 重新架構後,須重新啟動 Web 伺服器,以便您對 Net.Data 起始設定檔案所做的變更可以生效。 依據預設值,Net.Data 是在 CGI 模式中執行。

下列各節描述如何架構 Net.Data 與 Web 伺服器來執行 Web 伺服器 API 模式。 已提供一般性步驟和範例,但可能不同於您的作業系統。 請參閱您的作業系統的 Net.Data README 檔,以取得特定指示。

若要架構 GWAPI︰

  1. 停止 Web 伺服器。
  2. 確定 GWAPI DLL 或共用程式庫位於伺服器的 CGI-BINICAPI-LIB 目錄中。

    有關特定檔案和目錄名稱,請參閱符合您作業系統的 Net.Data README 檔案或程式目錄。

  3. 請新增服務程式陳述式至您的 Web 伺服器架構檔中 (httpd.confhttpd.cnf), 以呼叫該 API。

    例如:

    Service /cgi-bin/db2www* /home/http/cgi-bin/dtwicapi.o:dtw_icapi*
    

    請參閱作業系統的 Net.Data README 檔案,以取得特定檔案與目錄名稱。

  4. 重新啟動 Web 伺服器。

GWAPI 有完整的相容性來支援現存的應用程式。 以您在 CGI 中所用的相同方法,在 GWAPI 呼叫 URL、表格或鏈結。 能夠以 CGI 順利執行的巨集,就必定能夠使用 GWAPI 順利執行。 這些巨集不需要任何變更。

若要架構 ISAPI:

  1. 停止 Web 伺服器。
  2. 將 Net.Data 提供之 ISAPI 的 DLL 複製到伺服器的次目錄中。 例如:
    /inetsrv/scripts/dtwisapi.filetype
    

    其中 filetype 在 Window NT 和 OS/2 上是指 .dll, 在 UNIX 作業系統上是指 .o

    請參閱作業系統的 Net.Data README 檔案,以取得特定檔案與目錄名稱。

  3. 因為 ISAPI 會略過 CGI 處理,所以您不需要在套表與鏈結中具有 URL 的 cgi-bin/db2www/ 部份。 請改用 dtwisapi.filetype。例如, 如果下列 URL 呼叫 Net.Data 作為 CGI 程式:
    http://server1.stl.ibm.com/cgi-bin/db2www/test1.d2w/report
    

    您應該以下列 URL 呼叫 Net.Data 作為 ISAPI 外掛程式:

    http://server1.stl.ibm.com/scripts/dtwisapi.dll/test1.d2w/report
    
  4. 如果您已將巨集 test1.d2w 儲存在 MACRO_PATH 中指定的其中一個目錄或 Web 伺服器的現行目錄下的次目錄 /order/, 請使用下列 URL 呼叫 CGI 模式中的 Net.Data:
    http://server1.stl.ibm.com/cgi-bin/db2www/orders/test1.d2w/report
    

    呼叫 ISAPI 模式中的 Net.Data 的對等 URL 為:

    http://server1.stl.ibm.com/scripts/dtwisapi.dll/orders/test1.d2w/report
    
  5. 重新啟動 Web 伺服器。

若要架構 NSAPI:

  1. 停止 Web 伺服器。
  2. 將 Net.Data 提供之 NSAPI 的 DLL 複製到伺服器目錄中。 例如:
    /netscape/server/bin/httpd/dtwnsapi.filetype
    

    其中 filetype 在 Window NT 和 OS/2 上是指 .dll, 在 UNIX 作業系統上是指 .o

    請參閱作業系統的 Net.Data README 檔案,以取得特定檔案與目錄名稱。

  3. 使用下列的變更,來修改您的伺服器架構檔。 有關作業系統的差異,請參閱符合您作業系統的 Net.Data README 檔案或程式目錄。


    obj.conf 在檔案頂端加進下式:
    Init fn="load-modules" shlib="<path>dtwnsapi.dll" funcs=dtw_nsapi
    
    obj.conf 在 Services 部份加進下式:
    Service fn="dtw_nsapi" method=(GET|HEAD|POST) type="magnus-internal/d2w"
     
    
    mime.types 新增這個類型,其中 d2w 是巨集的預設副檔名。您可以設定任何三個字元組合。
    type=magnum-internal/d2w exts=d2w
    

  4. 將 Net.Data 巨集從 netdata/macro 目錄移動到伺服器的 Root 文件目錄︰
    /netscape/server/docs/
    
  5. 將伺服器的根文件目錄新增到起始設定檔案中的 MACRO_PATH 陳述式。 此變更指示 Net.Data 到何處尋找巨集。
  6. 因為 NSAPI 會略過 CGI 處理,所以您不需要在套表與鏈結中具有 URL 的 cgi-bin/db2www/ 部份。 伺服器知道具有 d2w 檔案類型的檔案為 Net.Data 巨集, 因為當您變更 Netscape 架構檔時己定義了它。例如,下列 URL 把 Net.Data 視為 CGI 程式來呼叫:
    http://server1.stl.ibm.com/cgi-bin/db2www/test1.d2w/report
    

    當下列 URL 呼叫 Net.Data 作為 NSAPI 外掛程式時:

    http://server1.stl.ibm.com/test1.d2w/report
    
  7. 重新啟動 Web 伺服器。

若您將您的 Net.Data 巨集放在好幾個目錄中,則最後三個步驟會有所變動:

  1. 將目錄連同其中的 Net.Data 巨集,一併移到伺服器的根文件目錄中。
  2. 更新起始設定檔中的 MACRO_PATH 變數,以併入您巨集所在位置的全部目錄和次目錄。
  3. 修改指向這些 Net.Data 巨集的鏈結與套表, 並保留其目錄名稱。例如,在 CGI 模式中執行時,下列 URL 將呼叫儲存在 /orders/ 目錄中的 Net.Data 巨集:
    http://server1.stl.ibm.com/cgi-bin/db2www/orders/test1.d2w/report
    

    更新過的 URL (用來呼叫 NSAPI 模式中的 Net.Data) 較短,但仍保留目錄名稱:

    http://server1.stl.ibm.com/orders/test1.d2w/report
    


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