试图了解安装CGI脚本

时间:2014-02-04 16:56:05

标签: python python-2.7 cgi chmod

http://www.tutorialspoint.com/python/python_cgi_programming.htm

#!/usr/bin/python

 print "Content-type:text/html\r\n\r\n"
 print '<html>'
 print '<head>'
 print '<title>Hello Word - First CGI Program</title>'
 print '</head>'
 print '<body>'
 print '<h2>Hello Word! This is my first CGI program</h2>'
 print '</body>'
 print '</html>'

#!/usr/bin/python

的意义何在?

它表示将文件保存为hello.py并将其保存到/var/www/cgi-bin目录但是我没有这个目录,我应该创建一个吗?

  

在运行CGI程序之前,请确保使用chmod 755 hello.py UNIX命令更改文件模式以使文件可执行。

但是(如何)执行此chmod命令的位置?我应该在$chmod 755 "/location of hello(.py).../"中加入hello.py吗?

2 个答案:

答案 0 :(得分:0)

您必须在* nix系统上包含#!/usr/bin/python行,以告诉shell如何解释此脚本以及解释器在系统中的位置。这被称为shebang line。

chmod 755 hello.py命令是一个unix shell命令,用于更改文件的权限并使其可执行。这样做可以运行脚本而无需python hello.py,而是./hello.py

据我了解,您是一名Windows用户。在这种情况下,您不必完成所有这些操作。只需将文件另存为hello.py即可。

tutorialspoint.com上的这篇文章暗示您已经运行了支持cgi的HTTP服务器,并且默认的Web目录为/var/www/

答案 1 :(得分:0)

#!/usr/bin/python是shell的信号(处理键盘输入并为您运行命令的程序),该文件是可由所示程序处理的脚本。它被称为'shebang'或有时'hashbang'。

在这种情况下,shebang告诉你的shel运行它在/usr/bin/python找到的程序并将其提交给它。还有更多here

chmod是用于设置文件权限的常规命令。您可以像执行任何其他命令一样从命令行执行它。权限的数值可能有点神秘,但它们由指示某些权限的二进制位组成。将权限更改为755特别指示文件的所有者可以将其作为程序执行,而不是仅将其视为文本块。我个人更喜欢描述性chmod u+x filename - 为用户添加执行。

您可以找到更全面的chmod here

说明