2015-02-24 157 views
0

我对webservers很新,我从头开始学习所有东西。Apache2未运行python脚本

我的网页很简单:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<body style="background-color:black;color:white"> 
<p> My website test site</p> 
<br> 
<form action="hello.py"> 
First Name: 
<input type="text" name="firstname"> 
<br> 
Last Name: 
<input type="text" name="firstname"> 
<input type="submit" name="submitbutton"> 
<br> 
</form> 

</body> 
</html> 

我的远程服务器上的作品,我已经进入我的apache2.conf文件,并试图更改配置文件,这样的Apache2将运行Python脚本:

<Directory /var/www/html/> 
    AllowOverride None 
    Order allow,deny 
    Allow from all 
    Options +ExecCGI 
    AddHandler cgi-script .py 
</Directory> 

找到脚本,然后代替运行脚本,该脚本在浏览器中显示为文本文件。我正尝试从网页远程运行此程序。我现在明白输出将会发送到我的控制台。

+0

什么是apache版本,你是否启用mod_cgi? LoadModule cgi_module modules/mod_cgi.so – Boris 2015-02-24 05:59:53

+0

此外,apache cgi教程涵盖运行基本cgi脚本时可能遇到的所有问题http://httpd.apache.org/docs/2.4/howto/cgi.html。你应该阅读它,以确保你了解所有的优点和缺点。 – Boris 2015-02-24 06:03:09

回答

0

尝试给

<Directory /var/www/html/cgi-bin> 
AllowOverride None 
Order allow,deny 
Allow from all 
Options +ExecCGI 
AddHandler cgi-script .py 
</Directory> 

,而不是给特定的文件夹中。

+0

我给了正确的文件夹,我把我的代码放在正确的文件夹中,问题是它不会运行代码,而是将程序作为文本文件 – 2015-02-24 05:49:24

+0

你的Python版本是什么? – Karthikeyan 2015-02-24 05:51:44

+0

我正在使用Python版本2.7.6 – 2015-02-24 05:53:37

0

THanks,我添加了这些更改。另外我需要重新启动服务器!