[pycsw-devel] Running on Windows 2008 Server IIS7

Godfrey, Bruce bgodfrey at uidaho.edu
Wed Mar 14 17:22:05 EDT 2012


Here is the error returned from your script:

 

HTTP Error 502.2 - Bad Gateway

The specified CGI application misbehaved by not returning a complete set
of HTTP headers. The headers it did return are "Traceback (most recent
call last): File
"C:\criticalApplications\console\pycsw\pycsw-1.0.0\test3.py", line 4, in
<module> import sqlalchemy ImportError: No module named sqlalchemy ".

 

But, in a python shell if I request the version I get '0.7.5' though as
shown here:

 

Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit
(Intel)] on win32

Type "copyright", "credits" or "license()" for more information.

>>> import sqlalchemy

>>> sqlalchemy.__version__

'0.7.5'

>>> 

 

And, I see "sqlalchemy' show up in the list when I use
"help('modules')".

 

Ideas on how best to proceed?

 

-Bruce

 

 

From: Tom Kralidis [mailto:tomkralidis at hotmail.com] 
Sent: Wednesday, March 14, 2012 1:32 PM
To: Godfrey, Bruce; gcpp.kalxas at gmail.com
Cc: pycsw-devel at lists.sourceforge.net
Subject: RE: [pycsw-devel] Running on Windows 2008 Server IIS7

 

 
Bruce: thanks for the info.  I'm wondering about the sqlalchemy issue,
and the fact that it's not found is causing an error right away.  Can
you try, as a cgi script:
 
#!/Python27/python -u
 
import os
import sqlalchemy
 
print 'Content-type:text/plain\n\n'
 
for k,v in os.environ.iteritems():
    print '%s -> %s' %(k,v)
 
This should run fine assuming sqlalchemy can be found in your
environment in IIS, and we can see what environment variables IIS is
working with at runtime.
 
I don't have an IIS environment, so if you can try, that would be great.
We can then figure out a way to patch the IIS environment variables in
the codebase.
 
Thanks
 
..Tom
 
 
Date: Wed, 14 Mar 2012 12:47:35 -0700
From: bgodfrey at uidaho.edu
To: gcpp.kalxas at gmail.com
CC: pycsw-devel at lists.sourceforge.net
Subject: Re: [pycsw-devel] Running on Windows 2008 Server IIS7
 
 
 
 
.ExternalClass p.ecxMsoNormal, .ExternalClass li.ecxMsoNormal,
.ExternalClass div.ecxMsoNormal
{margin-bottom:.0001pt;font-size:11.0pt;font-family:"Calibri","sans-seri
f";color:black;}
.ExternalClass a:link, .ExternalClass span.ecxMsoHyperlink
{color:blue;text-decoration:underline;}
.ExternalClass a:visited, .ExternalClass span.ecxMsoHyperlinkFollowed
{color:purple;text-decoration:underline;}
.ExternalClass pre
{margin-bottom:.0001pt;font-size:10.0pt;font-family:"Courier
New";color:black;}
.ExternalClass span.ecxHTMLPreformattedChar
{font-family:Consolas;color:black;}
.ExternalClass span.ecxEmailStyle19
{font-family:"Calibri","sans-serif";color:windowtext;}
.ExternalClass span.ecxEmailStyle20
{font-family:"Calibri","sans-serif";color:#1F497D;}
.ExternalClass span.ecxEmailStyle21
{font-family:"Calibri","sans-serif";color:#1F497D;}
.ExternalClass .ecxMsoChpDefault
{font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;}
.ExternalClass div.ecxWordSection1
{page:WordSection1;}
 
 I added system added environment variable for 'HTTP_HOST' and
'REQUEST_URI'.  That appears to have gotten me further along.  But, I
have another hurdle to clear it appears.  See below. I've got simple
test python scripts working in the same web directory as cws.py.  They
can be seen here:http://dev.insideidaho.org/pycsw/test.py and
http://dev.insideidaho.org/pycsw/test2.py.  So, I think (fingers
crossed) that I have the web server configured correctly but maybe I am
overlooking something. When I use the pycsw tester to try make a
GetCapabilities request I get a 502 error.   Pycsw tester is here:
http://dev.insideidaho.org/pycsw/tester/index.html When I run pycsw on
the localhost machine I get this response with more details:
#############################BEGIN
RESPONSE################################# <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html
xmlns="http://www.w3.org/1999/xhtml"> <head> <title>IIS 7.0 Detailed
Error - 502.2 - Bad Gateway</title> <style type="text/css"> <!--
body{margin:0;font-size:.7em;font-family:Verdana,Arial,Helvetica,sans-se
rif;background:#CBE1EF;}
code{margin:0;color:#006600;font-size:1.1em;font-weight:bold;}
.config_source code{font-size:.8em;color:#000000;}
pre{margin:0;font-size:1.4em;word-wrap:break-word;} ul,ol{margin:10px 0
10px 40px;} ul.first,ol.first{margin-top:5px;} fieldset{padding:0 15px
10px 15px;} .summary-container
fieldset{padding-bottom:5px;margin-top:4px;}
legend.no-expand-all{padding:2px 15px 4px 10px;margin:0 0 0 -12px;}
legend{color:#333333;padding:4px 15px 4px 10px;margin:4px 0 8px
-12px;_margin-top:0px;  border-top:1px solid #EDEDED;border-left:1px
solid #EDEDED;border-right:1px solid #969696;  border-bottom:1px solid
#969696;background:#E7ECF0;font-weight:bold;font-size:1em;}
a:link,a:visited{color:#007EFF;font-weight:bold;}
a:hover{text-decoration:none;} h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;}
h3{font-size:1.4em;margin:10px 0 0 0;color:#CC0000;}
h4{font-size:1.2em;margin:10px 0 5px 0; }#header{width:96%;margin:0 0 0
0;padding:6px 2% 6px 2%;font-family:"trebuchet MS",Verdana,sans-serif;
color:#FFF;background-color:#5C87B2; }#content{margin:0 0 0
2%;position:relative;}
.summary-container,.content-container{background:#FFF;width:96%;margin-t
op:8px;padding:10px;position:relative;}
.config_source{background:#fff5c4;} .content-container p{margin:0 0 10px
0; }#details-left{width:35%;float:left;margin-right:2%;
}#details-right{width:63%;float:left;
}#server_version{width:96%;_height:1px;min-height:1px;margin:0 0 5px
0;padding:11px 2% 8px 2%;color:#FFFFFF;
background-color:#5A7FA5;border-bottom:1px solid #C1CFDD;border-top:1px
solid #4A6C8E;font-weight:normal;
font-size:1em;color:#FFF;text-align:right; }#server_version p{margin:5px
0;} table{margin:4px 0 4px 0;width:100%;border:none;}
td,th{vertical-align:top;padding:3px
0;text-align:left;font-weight:bold;border:none;}
th{width:30%;text-align:right;padding-right:2%;font-weight:normal;}
thead th{background-color:#ebebeb;width:25%; }#details-right
th{width:20%;} table tr.alt td,table tr.alt
th{background-color:#ebebeb;}
.highlight-code{color:#CC0000;font-weight:bold;font-style:italic;}
.clear{clear:both;} .preferred{padding:0 5px 2px
5px;font-weight:normal;background:#006633;color:#FFF;font-size:.8em;}
--> </style>  </head> <body> <div id="header"><h1>Server Error in
Application "DEFAULT WEB SITE/PYCSW"</h1></div> <div
id="server_version">Internet Information Services 7.0<BR></div> <div
id="content"> <div class="content-container">  <fieldset><legend>Error
Summary</legend>   <h2>HTTP Error 502.2 - Bad Gateway</h2>   <h3>The
specified CGI application misbehaved by not returning a complete set of
HTTP headers.  The headers it did return are &quot;Traceback (most
recent call last):  File
&quot;C:\criticalApplications\console\pycsw\pycsw-1.0.0\csw.py&quot;,
line 34, in &lt;module&gt;    from server import server  File
&quot;C:\criticalApplications\console\pycsw\pycsw-1.0.0\server\server.py
&quot;, line 40, in &lt;module&gt;    import config, fes, log, profile,
repository, util  File
&quot;C:\criticalApplications\console\pycsw\pycsw-1.0.0\server\repositor
y.py&quot;, line 33, in &lt;module&gt;    from sqlalchemy import
create_engine, desc, funcImportError: No module named
sqlalchemy&quot;.</h3>  </fieldset> </div> <div
class="content-container">  <fieldset><legend>Detailed Error
Information</legend>   <div id="details-left">    <table border="0"
cellpadding="0" cellspacing="0">     <tr
class="alt"><th>Module</th><td>CgiModule</td></tr>
<tr><th>Notification</th><td>ExecuteRequestHandler</td></tr>     <tr
class="alt"><th>Handler</th><td>Python</td></tr>     <tr><th>Error
Code</th><td>0x00000001</td></tr>         </table>   </div>   <div
id="details-right">    <table border="0" cellpadding="0"
cellspacing="0">     <tr class="alt"><th>Requested
URL</th><td>http://dev.insideidaho.org:80/pycsw/csw.py</td></tr>
<tr><th>Physical
Path</th><td>C:\criticalApplications\console\pycsw\pycsw-1.0.0\csw.py</t
d></tr>     <tr class="alt"><th>Logon Method</th><td>Anonymous</td></tr>
<tr><th>Logon User</th><td>Anonymous</td></tr>         </table>    <div
class="clear"></div>   </div>  </fieldset> </div> <div
class="content-container">  <fieldset><legend>Most likely
causes:</legend>   <ul>     <li>The CGI process was shut down or
terminated unexpectedly before it finished processing the request.</li>
<li>The CGI process has a flaw and does not return a complete set of
HTTP headers.</li> </ul>  </fieldset> </div> <div
class="content-container">  <fieldset><legend>Things you can
try:</legend>   <ul>     <li>Check the event logs on the system to see
whether the CGI process is shutting down unexpectedly.</li>
<li>Troubleshoot the CGI application to determine why it is not sending
a complete set of HTTP headers.</li> </ul>  </fieldset> </div>   <div
class="content-container">  <fieldset><legend>Links and More
Information</legend>   This error occurs when the CGI process handling
the request exits before it finishes sending the response to IIS.   <a
href="http://go.microsoft.com/fwlink/?LinkID=62293&amp;IIS70Error=502,2,
0x00000001,6002">View more information &raquo;</a><BR>     </fieldset>
</div> </div> </body> </html> #############################END
RESPONSE#################################  Note that "sqlalchemy' show
up in the list when I use "help('modules')"  It seems like the crux of
the issue is that IIS7 doesn't like the way the HTTP headers being
returned by the pycsw script(s).  Maybe a syntax issue?  I'm not sure.
I'm definitely no expert.  Since I can run the test.py scripts I'm
hoping that the web server is configured properly.  If not I'm not quite
sure where to look at this point.  But, maybe it is still an IIS7
configuration issue. Ideas on how to troubleshoot this or get it
working?  Thanks much! -Bruce  From: Angelos Tzotsos
[mailto:gcpp.kalxas at gmail.com] 
Sent: Tuesday, March 13, 2012 6:08 PM
To: Godfrey, Bruce
Cc: pycsw-devel at lists.sourceforge.net
Subject: Re: [pycsw-devel] Running on Windows 2008 Server IIS7 Hi Bruce,
 
Yes, it seems that this issue is Windows specific. The "HTTP_HOST"
variable is not set in the environment variables.
 
Please try this from a Python console:
 
import os
os.environ
 
and send the output.
 
Thanks,
Angelos
 
On 03/14/2012 01:29 AM, Godfrey, Bruce wrote: Hi Angelos, Yes, thank
you, I was able to get it working using the syntax C:\\www\\pycsw I've
run into this issue now: Traceback (most recent call last):  File
"C:\criticalApplications\console\pycsw\pycsw-1.0.0\csw.py", line 40, in
<module>    CSW.dispatch()  File
"C:\criticalApplications\console\pycsw\pycsw-1.0.0\server\server.py",
line 161, in dispatch    (os.environ['HTTP_HOST'],
os.environ['REQUEST_URI'])  File "C:\Python27\lib\os.py", line 423, in
__getitem__    return self.data[key.upper()]KeyError: 'HTTP_HOST'>>>  I
think I'm close but I'm not sure where to look to try to track this
down.  I wonder if it is an IIS7 issue? -Bruce From: Angelos Tzotsos
[mailto:gcpp.kalxas at gmail.com] 
Sent: Tuesday, March 13, 2012 4:22 PM
To: pycsw-devel at lists.sourceforge.net
Subject: Re: [pycsw-devel] Running on Windows 2008 Server IIS7 Hello
Bruce,
 
Did you try the windows path like c:\path\to\pycsw ?
 
Regards,
Angelos
 
On 03/13/2012 04:44 AM, Godfrey, Bruce wrote: Hello, I'm attempting to
get pycsw running on a Windows 2008 box with IIS7.  I have all the
supporting libraries installed and I have SQLite3.  I'll preface this by
saying I have pretty limited experience with python.   I've changed the
first line of csw.py to: #!/Python27/python -u At this point I need edit
default.cfg, correct? What is the correct syntax for:
home=/var/www/pycsw on Windows?  Is it like: c:\path\to\defaul.cfg?
Thank you for any assistance in getting this running on my Windows box.
I really appreciate it.   -Bruce  
 
 
 
------------------------------------------------------------------------
------Keep Your Developer Skills Current with LearnDevNow!The most
comprehensive online learning library for Microsoft developersis just
$99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,Metro
Style Apps, more. Free future releases when you subscribe
now!http://p.sf.net/sfu/learndevnow-d2d
 
 
 
_______________________________________________pycsw-devel mailing
listpycsw-devel at lists.sourceforge.nethttps://lists.sourceforge.net/lists
/listinfo/pycsw-devel
 
 
 
-- Angelos TzotsosRemote Sensing LaboratoryNational Technical University
of Athenshttp://users.ntua.gr/tzotsos
 
 
-- Angelos TzotsosRemote Sensing LaboratoryNational Technical University
of Athenshttp://users.ntua.gr/tzotsos
------------------------------------------------------------------------
------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
pycsw-devel mailing list
pycsw-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pycsw-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/pycsw-devel/attachments/20120314/8e359d3e/attachment.html


More information about the Pycsw-devel mailing list