Help! Understanding CGI Scripts: What Am I Looking At?

  • Thread starter Thread starter Math Is Hard
  • Start date Start date
AI Thread Summary
CGI, or Common Gateway Interface, is a protocol that enables communication between web servers and external programs, often written in languages like Perl or PHP. The first line of a CGI script, starting with "#!", is known as a 'shebang' and indicates the path to the interpreter that should execute the script, which is a common practice in UNIX shell scripts. The subsequent lines contain the actual code, which in this case is written in Perl. Understanding CGI involves recognizing that it is not a programming language itself, but a standard for running scripts on a server. Resources like the provided link and Wikipedia can offer further clarification on CGI concepts.
Math Is Hard
Staff Emeritus
Science Advisor
Gold Member
Messages
4,650
Reaction score
39
I am having trouble understanding what CGI scripts are. What I *think* I know about it is that there is no "CGI" language, and when we say CGI script, we mean something written in Perl or Php or some other language that is run on the server. But I could just be utterly confused.

I was looking at this example:

#!/usr/bin/perl -wT
print "Content-type: text/html\n\n";
print "Hello, world!\n";

The 2nd and 3rd lines are written in Perl, I believe. But what is the first? This is just an instruction to the server to tell it the language? And what language is that first line written in? Is it a UNIX OS command? I don't know anything about UNIX, so that may be why I don't know what's going on.

Thanks!:smile:
 
Physics news on Phys.org
anyone? I didn't think these were tough questions...
 
CGI (Common Gateway Interface) is a communication protocol that specifies how programs communicate and send information back and forth between a server and client program.
The Common Gateway Interface, or CGI, is a standard for external gateway programs to interface with information servers such as HTTP servers
A CGI script can be written in any language, but in the early days of httpd were commonly written in Perl

The first line of your Hello World script tells the system where to find the Perl interpreter and is common in all unix shell scripts. Basically it tells the system what interpreter to use to execute the commands contained in the file.

The #! is called a 'shebang'

http://hoohoo.ncsa.uiuc.edu/cgi/
CGI on Wikipedia
 
Last edited by a moderator:
Thanks, imabug.

I just came across that first link you posted this afternoon and it has been helpful. I looked at the Wiki info earlier, but it didn't clear it up for me at all.
 
Thread 'Confusion regarding a chemical kinetics problem'
TL;DR Summary: cannot find out error in solution proposed. [![question with rate laws][1]][1] Now the rate law for the reaction (i.e reaction rate) can be written as: $$ R= k[N_2O_5] $$ my main question is, WHAT is this reaction equal to? what I mean here is, whether $$k[N_2O_5]= -d[N_2O_5]/dt$$ or is it $$k[N_2O_5]= -1/2 \frac{d}{dt} [N_2O_5] $$ ? The latter seems to be more apt, as the reaction rate must be -1/2 (disappearance rate of N2O5), which adheres to the stoichiometry of the...
Back
Top