NaviServer 本身支援 ASP/PHP 類似的寫法,可以內嵌 Tcl 程式碼到網頁中,
稱為 NaviServer Dynamic Pages (ADPs),其副檔名為 adp,可以參考下列的網頁:
NaviServer ADP Development
主要的語法有以下三種,第一種為使用 script 標籤:
<script language="tcl" runat="server" stream="on">
...
</script>
第二種則是短標籤:
<% ... %>
第二種則是印出變數的短標籤:
<%= ... %>
NaviServer 已經內建 nscgi 模組。檢查 nsd-config.tcl(或者是你使用的設定檔),確定有載入模組:
ns_section ns/server/default/modules {
if {$nscpport ne ""} {ns_param nscp nscp}
ns_param nslog nslog
ns_param nscgi nscgi
ns_param nsperm nsperm
ns_param revproxy tcl
}
如果想要使用以前使用 Tcl 寫的 CGI 程式、或者是要使用 NaviServer 練習撰寫 CGI 程式, 只要注意 NaviServer cgi-bin 設定的位置正確的放置檔案,以及正確的加入 Tcl interpreter 的設定即可。 接下來修改 nsd-config.tcl:
ns_section ns/server/default/module/nscgi {
ns_param map "GET /cgi-bin $home/cgi-bin"
ns_param map "POST /cgi-bin $home/cgi-bin"
ns_param interps CGIinterps
#ns_param allowstaticresources true ;# default false; serve static resources from cgi directories
}
ns_section ns/interps/CGIinterps {
ns_param .pl "/usr/bin/perl"
ns_param .tcl "/usr/bin/tclsh"
ns_param .sh "/bin/bash"
}
沒有留言:
張貼留言