Cherrypy setup questions

fumanchu fumanchu at amor.org
Tue May 22 23:38:27 EDT 2007


On May 22, 6:38 pm, Brian Blais <bbl... at bryant.edu> wrote:
> I'd like to start trying out some cherrypy apps, but I've
> been having some setup problems.  I think I need some
> bone-head simple example to clear my understanding.  :)
>
> I'm on a system running Apache, that I don't have root
> access to.  I will be publishing the html/image/python
> files in a directory off of my current web page, and
> running the app as a user on the system.  I'd like to be
> able to specify the base url for the app, especially if
> I have more than one app.  I've read the docs, but am
> getting confused with the config file information, and
> exactly how to set it up.  I'm using CherryPy 3.0.1,
> the latest I know.
>
> Some questions I have:
> 1) can I configure cherrypy to look at requests only
> off a base url, like:
>
>     http://www.provider.com:8080/~myusername/apps

Yes, you can. Assuming you're using the "cherrypy.quickstart"
function, supply the "base url" in the "script_name" argument; for
example:

    sn = 'http://www.provider.com:8080/~myusername/apps'
    cherrypy.quickstart(Root(), sn, config)

If you're using cherrypy.tree.mount instead of quickstart, it takes a
similar argument.

> 2) If you run (as in Unix):
>
>     cd app1
>     python mycherrypyapp1.py &
>
>     cd ../app2
>     python mycherrypyapp2.py &
>
> Does this start 2 cherrypy servers, trying to both fight
> for port 8080, or is there only one, and the two apps share it?

This will almost certainly start two cherrypy servers. You can run one
on a different port via a "server.socket_port" config entry if you
like. If you want them both to run on the same port but different
"base urls", you should write a small "mysite.py" which mounts them as
desired; for example:

# mysite.py

import cherrypy
import app1, app2

cherrypy.tree.mount(app1.root, "/app1")
cherrypy.tree.mount(app2.root, "/app2")
cherrypy.server.quickstart()
cherrypy.engine.start()
cherrypy.engine.block()


> I didn't see a CherryPy mailing list, so I'm posting here,
> but if there is somewhere else better I'd be glad to know!

There is a cherrypy-users mailing list, and I'm CC'ing it so you can
reply there if you like. :)

Hope that helps!


Robert Brewer
System Architect
Amor Ministries
fumanchu at amor.org




More information about the Python-list mailing list