Failed to execute proxy.cgi on virtualhost apache

I am trying to execute proxy.cgi from openlayers on my computer using windows 7 and xampp. when I tried to use localhost / mymaps / cgi-bin / proxy.cgi it runs fine.

but when I tried to execute using virtualhost he came up with

Server error!

The server detected an internal error and could not fulfill your request.

Error message: Failed to create child process: 720002: proxy.cgi

I look at the error log that said

[Thu Feb 06 14:24:16 2014] [error] [client 127.0.0.1] (OS 2)The system cannot find the file specified.  : couldn't create child process: 720002: proxy.cgi
[Thu Feb 06 14:24:16 2014] [error] [client 127.0.0.1] (OS 2)The system cannot find the file specified.  : couldn't spawn child process: C:/xampp/cgi-bin/proxy.cgi

this is my httpd-vhosts.conf file

<VirtualHost *:80>
    ServerAdmin admin@sidik.com
    DocumentRoot "C:\xampp\htdocs\sidik"
    ServerName sidik.com
    ServerAlias sidik.com
    <Directory "C:\xampp\htdocs\sidik">
    Order allow,deny
    Allow from all
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    </Directory>
</VirtualHost>

this is my proxy.cgi

#!/Python27/python.exe -u
"""This is a blind proxy that we use to get around browser
restrictions that prevent the Javascript from loading pages not on the
same server as the Javascript.  This has several problems: it less
efficient, it might break some sites, and it a security risk because
people can use this proxy to browse the web and possibly do bad stuff
with it.  It only loads pages via http and https, but it can load any
content type. It supports GET and POST requests."""

import urllib2
import cgi
import sys, os

# Designed to prevent Open Proxy type stuff.

allowedHosts = ['www.google.co.id','www.openlayers.org','202.124.205.123:81/~vaonline', 'openlayers.org',
                'labs.metacarta.com', 'world.freemap.in', 
                'prototype.openmnnd.org', 'geo.openplans.org',
                'sigma.openplans.org', 'demo.opengeo.org',
                'www.openstreetmap.org', 'sample.azavea.com',
                'v2.suite.opengeo.org', 'v-swe.uni-muenster.de:8080','172.20.110.20:83','172.20.110.20' 
                'vmap0.tiles.osgeo.org', 'www.openrouteservice.org', '172.20.32.11:8080']

method = os.environ["REQUEST_METHOD"]

if method == "POST":
    qs = os.environ["QUERY_STRING"]
    d = cgi.parse_qs(qs)
    if d.has_key("url"):
        url = d["url"][0]
    else:
        url = "http://www.openlayers.org"
else:
    fs = cgi.FieldStorage()
    url = fs.getvalue('url', "http://www.openlayers.org")

try:
    host = url.split("/")[2]
    if allowedHosts and not host in allowedHosts:
        print "Status: 502 Bad Gateway"
        print "Content-Type: text/plain"
        print
        print "This proxy does not allow you to access that location (%s)." % (host,)
        print
        print os.environ

    elif url.startswith("http://") or url.startswith("https://"):

        if method == "POST":
            length = int(os.environ["CONTENT_LENGTH"])
            headers = {"Content-Type": os.environ["CONTENT_TYPE"]}
            body = sys.stdin.read(length)
            r = urllib2.Request(url, body, headers)
            y = urllib2.urlopen(r)
        else:
            y = urllib2.urlopen(url)

        # print content type header
        i = y.info()
        if i.has_key("Content-Type"):
            print "Content-Type: %s" % (i["Content-Type"])
        else:
            print "Content-Type: text/plain"
        print

        print y.read()

        y.close()
    else:
        print "Content-Type: text/plain"
        print
        print "Illegal request."

except Exception, E:
    print "Status: 500 Unexpected Error"
    print "Content-Type: text/plain"
    print 
    print "Some unexpected error occurred. Error text was:", E

What did I do wrong?

+3
source share
1 answer

, -, . python , : #!c:/Python27/python.exe cgi #!/Python27/python.exe -u , , ( apache httpd.conf);

<Directory "C:/xampp/cgi-bin">
  AllowOverride All
  Options None
  Require all granted
</Directory>

cgi . ,

+2

All Articles