C++ Web Programming
In the earlier chapters of C++, you have learned about the basics of various syntax and way of writing C++ programs for building applications and programs. In this chapter, you will get a new taste of linking web with your C++ program. For this you need to have knowledge of basics of CGI and how it works.
What is CGI?
CGI stands for Common Gateway Interface is a set of standards that defines how information is exchanged from web server, passing the web user’s request to an application program and to receive data back to user. When any user requests for a web page, the server sends back the requested page. The Web server typically passes the form information to a small application program that processes the data and may send back a confirmation message. This method or convention for passing data back and forth between the server and the application is called the common gateway interface (CGI) and is part of the Web’s Hypertext Transfer Protocol (HTTP).
The current version is CGI/1.1 and CGI/1.2 is under progress.
Browsing the Web
For knowing the concept of CGI, let us take a look at the scenario that takes place when users browse something on web using a specific URL.
If you are developing a web site and you required a CGI application to control then you can specify the name of the application in the URL (uniform resource locator) that you code in an HTML file.
Server Configuration
Before using the CGI programming, programmers should make sure that the Web server supports CGI and is well configured for handling CGI programs. By convention CGI files will have extension as .cgi, though they are C++ executable. By default, Apache Web Server is configured to run CGI programs in /var/www/cgi-bin. Programmers need to have a web server up and running in order to run any CGI program like Perl, shell etc.
Here is an example of CGI program using C++
Example:
#include <iostream>
void main ()
{
cout << "Content-type:text/html\r\n\r\n";
cout << "<html>\n";
cout << "<head>\n";
cout << "<title>Hello TutorialsCloud </title>\n";
cout << "</head>\n";
cout << "<body>\n";
cout << "<h3> <b> First CGI program </b> </h2>\n";
cout << "</body>\n";
cout << "</html>\n";
}
Compile the above program and give this executable a suitable name along with the extension .cgi. This file needs to be kept in /var/www/cgi-bin directory and it has following content. Before running your CGI program make sure that you have change mode of file using chmod 755 cplusplus.cgi UNIX command to make file executable. The above C++ program writes its output on STDOUT file i.e. on the screen. There are some other HTTP headers which are frequently used in CGI programs. They are:
No comments:
Post a Comment