2010-01-02 59 views
3

我在使用apache時看到一個名爲cgi-bin的文件夾很長。什麼是CGI和什麼是CGI腳本?

腳本如何幫助我?

我該如何使用它們?

我已經使用php和ajax僅用於web開發!

+1

當你用Google搜索CGI,你學到了什麼?什麼? – 2010-01-02 03:00:46

+3

-1:「絕對沒有」。 – 2010-01-03 17:21:32

+0

[This](http://www.jmarshall.com/easy/cgi/)是一個關於CGI的好教程。 – Annie 2010-01-02 02:36:40

回答

11

G'day,

Web服務器,例如, Apache,只是發回靜態內容是響應客戶端請求的內容。例如,對http://www.myserver.com/index.html的請求通常會導致服務器打開文件並返回使用相關http組件包裝的文件的內容。

基本上,CGI是一種技術,可以根據需要通過Web服務器運行的其他應用程序動態生成此類網頁。

目錄cgi-bin通常用於存放正在運行的腳本。

雖然它主要集中在Perl書籍「CGI Programming with Perl」有關於CGI的一個很好的介紹。

編輯:正如以下評論所述,「如果PHP可以處理動態內容,那麼對CGI有什麼需要」。這裏有幾點。

  1. 開箱即用,PHP可以很慢。 CGI,尤其是它的mod_perl guise,或者當使用應用程序的內置編譯語言時,
  2. PHP沒有非常強大的錯誤處理功能,但這可以解決,
  3. 我不認爲有真正的支持ASP,Windows應用程序或數據庫和
  4. PHP安全性有點擔心,例如啓用了register_globals,PHP的缺陷非常有名。

PHP語言本身的設計本身也包含許多不一致之處,例如,

  • 一個相當無用的對象模型,
  • 作用域是相當糟糕的,
  • 不一致的命名,並
  • 標準庫的組織不力。

我相信PHP5可以長期改善這些問題。

儘管安全始終是一個問題,但在CGI實現中,您可以通過公開的方式將安全問題降至最低。

HTH

歡呼聲,

+0

感謝回覆搶劫:) php可以照顧動態內容儀式嗎? 然後wats需要cgi? – kgdinesh 2010-01-02 06:54:51

+1

@dineshbabu,希望我回答你的問題與上述編輯。 ( - : – 2010-01-02 13:36:56

+0

再次感謝.. D – kgdinesh 2010-01-02 13:38:46

1

cgi-bin代表CGI二進制。說實話,如果你已經熟悉PHP,那麼你很可能不需要老式的CGI腳本。