/usr/share/doc/python-twisted-web/examples/rootscript.py is in python-twisted-web 13.2.0-1ubuntu1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | # Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
This is a Twisted Web Server with Named-Based Virtual Host Support.
Usage:
$ sudo twistd -ny rootscript.py
Note: You need to edit your hosts file for this example
to work. Need to add the following entry:
127.0.0.1 example.com
Then visit http://example.com/ with a web browser and compare the results to
visiting http://localhost/.
"""
from twisted.web import vhost, static, script, server
from twisted.application import internet, service
default = static.Data('text/html', '')
# Setting up vhost resource.
default.putChild('vhost', vhost.VHostMonsterResource())
resource = vhost.NameVirtualHost()
resource.default = default
# Here we use /var/www/html/ as our root diretory for the web server, you can
# change it to whatever directory you want.
root = static.File("/var/www/html/")
root.processors = {'.rpy': script.ResourceScript}
# addHost binds domain name example.com to our root resource.
resource.addHost("example.com", root)
# Setup Twisted Application.
site = server.Site(resource)
application = service.Application('vhost')
sc = service.IServiceCollection(application)
# Only the processes owned by the root user can listen @ port 80, change the
# port number here if you don't want to run it as root.
i = internet.TCPServer(80, site)
i.setServiceParent(sc)
|