2017-02-22 65 views
-1

我是一名自學成才的開發者,學習了HTML,CSS,PHP,SQL和JAVASCRIPT來創建我自己的網站。這是一個交互式網站,根據簡單的表單輸入(字典樣式)顯示信息。在閱讀apache.org中的文檔時,我碰巧知道CGI編程,而且我很困惑。我是否必須學習CGI編程來構建和維護一個網站? (這是一個人的項目)我必須學習CGI編程來構建和維護一個網站嗎?

編輯: 我之後的答案(和接受)做了CGI一些研究。 (對於像我這樣的初學者) CGI不是一種編程語言,它的名稱(通用網關接口)中聲明瞭一個接口,用於在服務器中運行腳本(由瀏覽器請求)並返回結果到瀏覽器。

https://en.wikipedia.org/wiki/PHP維基百科的文章(關於PHP)提供有關在一個Web服務器的CGI和PHP之間的關係相當不錯的解釋,我引用下面這

有添加了支持兩種主要方式PHP到Web服務器 - 作爲本地Web服務器模塊,或作爲CGI可執行文件。 PHP有一個稱爲服務器應用編程 接口(SAPI)的 直接模塊接口,該接口由許多Web服務器支持,包括 Apache HTTP Server,Microsoft IIS,Netscape(現已停用)和iPlanet。 某些其他Web服務器(如OmniHTTPd)支持Internet Server 應用程序編程接口(ISAPI),它是Microsoft的Web 服務器模塊接口。如果PHP沒有模塊支持web 服務器,它總是可以用作通用網關接口(CGI)或FastCGI處理器;在這種情況下,Web服務器被配置爲使用PHP的CGI可執行文件來處理對PHP文件的所有請求。

這隻關於PHP和CGI,CGI可以和C,Perl等程序語言一起使用。當你爲CGI提供Google時,你總是可以找到CGI和Perl,但這並不意味着Perl是CGI或者CGI是Pearl,CGI腳本也可以是其他語言。

回答

0

在我看來,如果你的目標是隻有靜態環境的網站,那麼它應該足以知道你已經提到的內容。但是,對於動態內容(以及在服務器端運行的東西),您需要使用CGI。在某些時候,我使用Perl與CGI達成協議,我喜歡它,但CGI也可以使用任何其他編程語言,例如PHP來完成。

+0

@ dmi,謝謝,我的網站包含動態內容。你能指導我如何在PHP中做cgi,並且請解釋什麼是fast_cgi –

+0

@ dmi,通過指導我的意思是讓我看看一些好的鏈接 –

+0

簡而言之(據我所知),CGI爲你提供了一種執行程序的方法在服務器端形成將在客戶端(瀏覽器)顯示的動態內容。通過這種方式,您可以將客戶端動態(例如通過JavaScript實現)與服務器端動態結合在一起。例如,CGI可用於從數據庫讀取一些數據以在瀏覽器中顯示。 – dmi

相關問題