参考:
http://www.jdon.com/idea/cgi.htm
http://www.jb51.net/article/49069.htm
在Apache在配置对CGI的支持
LoadModule cgi_module modules/mod_cgi.so
定义CGI的目录
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
#
# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
<Directory "/var/www/cgi-bin">
Options Indexes FollowSymLinks MultiViews +ExecCGI
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
定义CGI支持的文件后缀
AddHandler cgi-script .cgi .py .sh
编写CGI脚本
注意: 需要添加可执行权限
cd /var/www/cgi-bin
vim list.cgi
#!/usr/bin/env python
print "Content-Type: text/html\n"
print "<html><head><title>Books</title></head>"
print "<body>"
print "<h1>Books</h1>"
print "<ul>"
for row in range(10):
print "<li>%s</li>" % row
print "</ul>"
print "</body></html>"
chmod +x list.cgi
访问测试
# curl localhost:80/cgi-bin/list.cgi
<html><head><title>Books</title></head>
<body>
<h1>Books</h1>
<ul>
<li>0</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
</ul>
</body></html>