The "app" in your second example has the same signature as
"application" in your first example. They are both objects that
conform to the WSGI protocol.

So if your runner for IIS is looking for an "application" module-level
variable to be defined in that module then hopefully you have your
answer that you just rename "app" to "application" and probably get
rid of the "if __name__" part, as well as the server.

An example of the file you are attempting to create can be found in
pyramid's mod_wsgi documentation [1]. Pasted below for clarity would
be a file named "wsgi.py" that is the entry-point (replacing your
first sample application). Your actual code would be unchanged from
any of the tutorials, meaning it would go in another module and then
instead of using "pserve production.ini" you are passing
"/path/to/wsgi.py" to your IIS configuration.

from pyramid.paster import get_app, setup_logging
ini_path = '/Users/chrism/modwsgi/env/myapp/production.ini'
setup_logging(ini_path)
application = get_app(ini_path, 'main')

[1] 
http://docs.pylonsproject.org/projects/pyramid/en/1.5-branch/tutorials/modwsgi/index.html


On Mon, Oct 13, 2014 at 2:46 PM,  <j...@goldthwaites.com> wrote:
> This is embarassing but I've been unable to figure out what's going on.  I'm
> trying to write a WSGI application that will be running under IIS. As I
> understand it, WSGI is a pretty simple API. I have a sample application
> running;
>
>
>     def application(environ, start_response):
>         """WSGI Application"""
>
>         start_response('200 OK', [('Content-type','text/html')])
>         return ['Hello World!']
>
> This is a very basic WSGI application. IIS passes the environment and
> start_response objects and I return an iterable.  This doesn't help in
> mapping URLs to functions and so forth so I started looking around for a
> good framework to manage that stuff. I'd heard good things about Pyramid so
> I thought I'd give that a try.  When I searched for a WSGI example, I found
> this;
>
>     from wsgiref.simple_server import make_server
>     from pyramid.config import Configurator
>     from pyramid.response import Response
>
>     def hello_world(request):
>         return Response('Hello %(name)s!' % request.matchdict)
>
>     if __name__ == '__main__':
>
>         config = Configurator()
>         config.add_route('hello', '/hello/{name}')
>
>         config.add_view(hello_world, route_name='hello')
>
>        app = config.make_wsgi_app()
>         server = make_server('0.0.0.0', 8080, app)
>         server.serve_forever()
>
> This example looks like it's using WSGI since it's calling the
> make_wsgi_app() method of the config object but I'm not seeing anything that
> I can expose to IIS, i.e. any function with (environ, start_response) as the
> parameters. I'm sure it's burried somewhere in app but I haven't been able
> to find any examples of how to do it.
>
> Can anyone point me to a simple example using pyramid under IIS?
>
> Thanks
>
> --
> You received this message because you are subscribed to the Google Groups
> "pylons-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pylons-discuss+unsubscr...@googlegroups.com.
> To post to this group, send email to pylons-discuss@googlegroups.com.
> Visit this group at http://groups.google.com/group/pylons-discuss.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pylons-discuss+unsubscr...@googlegroups.com.
To post to this group, send email to pylons-discuss@googlegroups.com.
Visit this group at http://groups.google.com/group/pylons-discuss.
For more options, visit https://groups.google.com/d/optout.

Reply via email to