Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

How to specify listening address and port in web.py ? Something like:

web.application( urls, host="33.44.55.66", port=8080 )

I would like to avoid using the default web.py command line parsing

function runsimple(func,server_address=('0.0.0.0', 8080))

Runs CherryPy WSGI server hosting WSGI app func. The directory static/ is hosted statically.

Example code

import web
class MyApplication(web.application):
    def run(self, port=8080, *middleware):
        func = self.wsgifunc(*middleware)
        return web.httpserver.runsimple(func, ('0.0.0.0', port))
if __name__ == "__main__":
    app = MyApplication(urls, globals())
    app.run(port=8888)

If you're using web.py's built-in webserver, you can just append the port to the command:

python app.py 8080

I haven't tried ever with the listening address, but perhaps it will accept 1.2.3.4:8080 as the format.

Good intuition, it accepts address too. Although, I would like to use my own command line parsing and do not mix it with default web.py command line parser – Jakub M. Jan 21, 2013 at 18:32 Do you mean to run it from a 'normal' webserver like Apache or something? If that's the case, you'll need to play around with the Apache config to determine which address/port combo should point to your script. – Dan Jan 21, 2013 at 18:35
server_addr = validip(listget(sys.argv, 1, ''))
if os.environ.has_key('PORT'): # e.g. Heroku
    server_addr = ('0.0.0.0', intget(os.environ['PORT']))
return httpserver.runsimple(func, server_addr)

so, you can set the web server port by add environ variable:

import os
os.environ["PORT"] = "80"
        

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.