<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>
Dan, on the script you just sent me back:<br><br><pre>ScriptAlias /cgi-bin/ /home/danlyke/websites/flutterby.net/cgi-bin/<br>   <Directory "/home/danlyke/websites/flutterby.net/cgi-bin"><br>            AllowOverride None<br>            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br>            Order allow,deny<br>              Allow from all<br>        </Directory><br> <br>What file did you find this in? Looking through my /etc/apache2 directory I found several files with ScriptAlias, <Directory ..., and ExecCGI.<br>I ended up making copies (file.orig) of every file that contained ExecCGI & <Directory...> and editing the original by adding /home/var/www to <br>the <Directory... > field.<br>I see you have "ScriptAlias /cgi-bin" What exactly is that for? It appears to me to be a directory right under / but then you give another path <br>to cgi-bin far below your home directory. One last thing. You'll notice that I have the file name simple1.cgi, are you saying that it should <br>by .py? <br></pre><br><br><div><div id="SkyDrivePlaceholder"></div>> Date: Tue, 13 Nov 2012 08:33:24 -0800<br>> From: danlyke@flutterby.com<br>> To: chugalug@chugalug.org<br>> Subject: Re: [Chugalug] OT maybe, python and apache<br>> <br>> On Tue, 13 Nov 2012 10:21:38 -0600<br>> Garrett Gaston <garrett85@hotmail.com> wrote:<br>> > I have one copy of the file in /var/www and another<br>> > in /var/www/cgi-bin. I've also used grep and vi to find and edit<br>> > every file in /etc/apache2 that contains "ExecCGI' and I've removed<br>> > that # in front of it hoping to turn on apache's cgi function. Could<br>> > someone please tell me what I've done wrong here? Thanks.<br>> <br>> Two problems, one of which I know what the answer to is. Let's start<br>> with the unknown one first: Your Apache isn't running your app as a<br>> CGI. I do something like:<br>> <br>>  ScriptAlias /cgi-bin/ /home/danlyke/websites/flutterby.net/cgi-bin/<br>>       <Directory "/home/danlyke/websites/flutterby.net/cgi-bin"><br>>                AllowOverride None<br>>                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch<br>>                Order allow,deny<br>>          Allow from all<br>>    </Directory><br>> <br>> <br>> To make http://localhost/cgi-bin/test.py run<br>> from /home/danlyke/websites/flutterby.net/cgi-bin/<br>> <br>> The second is easy:<br>> <br>> > #!/usr/bin/python3<br>> > print('Content-type: text/plain')<br>> <br>> You need a blank line between the headers and the content, so add a<br>> line here that says:<br>> <br>> print('')<br>> > # prints an empty line, to end the headers<br>> > print('Testing Python CGI')<br>> <br>> Dan<br>> _______________________________________________<br>> Chugalug mailing list<br>> Chugalug@chugalug.org<br>> http://chugalug.org/cgi-bin/mailman/listinfo/chugalug<br></div>                                          </div></body>
</html>