Talk:Common Gateway Interface

From Wikipedia, the free encyclopedia
Jump to: navigation, search
          This article is of interest to the following WikiProjects:
WikiProject Internet  
WikiProject icon This article is within the scope of WikiProject Internet, a collaborative effort to improve the coverage of the Internet on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 ???  This article has not yet received a rating on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.
WikiProject Computing / Software  
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 ???  This article has not yet received a rating on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Software.

Clarification of "This/Apache"[edit]

Phrase "This/Apache creates a small, ..." in section "More details" needs clarification. Toni Stoev (talk) 17:47, 4 October 2011 (UTC)

Also stumbled over this. Even if it were English, it would still be confusing what is being referred to. (talk) 10:32, 10 November 2011 (UTC)

Clarification Apache and CGI[edit]

Just a point of clairification. Is Apache an instance of a CGI program? And how does GCI handle SSI? Newbie questions, I know... —Preceding unsigned comment added by (talkcontribs) 21:09, 28 June 2005

For what it's worth, Apache is an instance of a web server software, and CGI is software that may run on a web server. SSI means Server Side Includes. --Unixguy 16:55, 15 October 2007 (UTC)

HTTP cookie[edit]

I have submitted the article HTTP cookie for peer review (I am posting this notice here as this article is related). Comments are welcome here: Wikipedia:Peer review/HTTP cookie/archive1. Thanks. - Liberatore(T) 16:56, 14 January 2006 (UTC)


Can someone explain what this is? Also, is it CGI-bin or CGI-BIN? Thanks!

CGI-bin stands for CGI binaries (programs). It is commonly also used as the default name of the folder where the CGI programs are stored in various server applications such as Apache. The reason that all CGI programs for a given site are usually placed in one folder is to make it easier to secure the server. Superflyguy 19:21, 10 August 2006 (UTC)
Write this in the article... (someone wrote sometime)

The directory is actually named "cgi-bin". Unix file names are case-sensitive, and all-lower-case is used for most names. 13:58, 17 January 2007 (UTC)

CGI binaries do not need to be in the CGI-bin, they can be placed any place else if you configure .htaccess correctly. (talk) 16:20, 6 January 2010 (UTC)
or configure it incorrectly, depending on your point of view.

Abstract or article?[edit]

The abstract of the article is longer than the article itself. What should remain in the abstract, and what should be moved? Superflyguy 19:21, 10 August 2006 (UTC)[edit]

The link is not up to date any more, sorry :(

Beware of AWB[edit]

Twice now I've seen people use AWB to "clean up" the article, mostly removing underscores from links to articles such as mod_perl, etc. These underscores are part of the names and should not be removed. Everybody says "mod_perl"; almost nobody says "mod perl". - furrykef (Talk at me) 22:52, 21 December 2006 (UTC)

Too brief[edit]

This is a pathetically too-little article for such an important tech subject. How about some actual sample protocol details etc? 14:01, 17 January 2007 (UTC)

Seconded. The article spends more time talking about shortcomings and alternatives than about CGI. There is also some wankery in there about how the trade off is the software engineer's decision to make. At least there are some external links. —The preceding unsigned comment was added by (talk) 23:55, August 20, 2007 (UTC)


I've just removed the following links from the "see also" section. If they are considered appropriate for the article (which I doubt) then they should be in "external links" not "see also".

  • VBMcgi - A free, open-source, cross-platform, C++ library for web/cgi software, using C++ and 3-tier architecture.
  • The sbVB VBMcgi course - A course on VBMcgi

Davorg 11:27, 13 February 2007 (UTC)

WAHHH —Preceding unsigned comment added by (talk) 14:16, 26 February 2008 (UTC)


Does it mean that a website running CGI scripts will access remote computers? ~ R.T.G 23:40, 20 November 2008 (UTC)

No, it doesn't. There is clearly something wrong with this article. Perhaps it shouldn't be here in the first place. Rp (talk) 19:25, 31 March 2009 (UTC)
I have rewritten the introduction to address this. Rp (talk) 11:03, 25 November 2009 (UTC)

The lack of a single official CGI specification[edit]

RFC 3875 is not the CGI spec. It is an informational article by two authors from the Apache Software Foundation that attempts to define CGI more formally. It is a common misconception that every RFC document is (or was) a standard. That is far from true. See RFC 1796 for an explanation. RFC 3875 can be considered a standard only if most CGI implementors agree to adhere to it. If you have seen any statements by implementors, please cite them. It looks like the closest thing to the CGI spec is the original CGI/1.1 spec at NCSA which is cited by nearly everyone. — Alexander Konovalenko (talk) 13:38, 23 November 2009 (UTC)

Good point. Rp (talk) 18:45, 23 November 2009 (UTC)
No, actually, RFC 3875 is the official CGI spec at this point. I will look for statements to cite, and if I cannot find any, I will make one re Apache by virtue of being one of the RFC authors and an Apache core developer. The RFC was developed by a number of people, among whom were some implementors. Rodent of Unusual Size (talk) 02:10, 19 March 2010 (UTC)

The link to the NCSA "spec" appears to be broken. —Preceding unsigned comment added by (talk) 07:00, 9 February 2011 (UTC)

Higher level APIs: ASP, JSP, PHP[edit]

I think Java Servlet/JSP, Microsoft ASP, PHP and other technologies should be referenced as more advanced solutions to the problem that CGI came to solve. (talk)

What do you mean by that? PHP is installed either as an apache module or as a CGI binary. Why is PHP more advanced than CGI? They are two different concepts. (talk) 16:18, 6 January 2010 (UTC)
What means is that JSP, ASP and PHP don't usually use CGI scripts. They are not themselves more advanced solutions, but they do typically use a more advanced alternative to CGI scriipts, an alternative that is explained in the article, but perhaps not with sufficient clarity. Rp (talk) 17:59, 6 January 2010 (UTC)
Yes, but you can write Perl or compiled binaries (C/C++/Java) that can be executed in CGI/FastCGI just like you can with JSP, ASP and PHP. I think the point is that CGI/FastCGI are language independent, so mentioning specific languages is simply wrong and leads to misunderstandings. Maybe is talking about Apache modules but shared web hosts do not usually use them because they are less secure than CGI/FastCGI. CGI/FastCGI is process separated which is more secure than running embedded to Apache as a module. (talk) 20:58, 6 January 2010 (UTC)
I agree, but I believe the article should discuss this to make sure that these widespread misunderstandings don't propagate from here. Rp (talk) 09:45, 18 January 2010 (UTC)

Link rot[edit]

Can anyone help out? Most of the links to the historical spec documents seem to be 404s. The same is true if you visit the w3c site, their links to external documents are also broken.CecilWard (talk) 09:35, 15 April 2010 (UTC)

I have never seen the original documentation at NCSA's "hoohoo" server but I found what looks like a mirror of the original documentation at [1]. It appears that the NCSA has shut down the original server without any intent to bring its former contents back on-line (see [2]). --Claim (talk) 08:34, 28 June 2011 (UTC)

Please make up your mind.[edit]

Par. 1:

In simple words the CGI provides an interface between the webservers and the clients.

Par. 3:

CGI specifies which information is communicated between the webserver and such a console application, and how.

--Doru001 (talk) 10:04, 24 May 2010 (UTC)

These are two ways of saying exactly the same thing. Rp (talk) 08:40, 19 April 2011 (UTC)

"... and NCSA still hosts it at its original location."[edit]

Not true anymore. (talk) 12:30, 28 February 2011 (UTC)

Copyright problem removed[edit]

Prior content in this article duplicated one or more previously published sources. The material was copied from: Infringing material has been rewritten or removed and must not be restored, unless it is duly released under a compatible license. (For more information, please see "using copyrighted works from others" if you are not the copyright holder of this material, or "donating copyrighted materials" if you are.) For legal reasons, we cannot accept copyrighted text or images borrowed from other web sites or published material; such additions will be deleted. Contributors may use copyrighted publications as a source of information, but not as a source of sentences or phrases. Accordingly, the material may be rewritten, but only if it does not infringe on the copyright of the original or plagiarize from that source. Please see our guideline on non-free text for how to properly implement limited quotations of copyrighted text. Wikipedia takes copyright violations very seriously, and persistent violators will be blocked from editing. While we appreciate contributions, we must require all contributors to understand and comply with these policies. Thank you. NortyNort (Holla) 10:49, 3 June 2011 (UTC)

No explanation of the CGI standard[edit]

The present article has a section Syntax (whence that title?) with an example, but it does not actually explain the CGI standard at all. An explanation should be added Rp (talk) 08:50, 2 July 2015 (UTC)