a simple static fileserver and directory index server in python (WSGI app)
Project description
a simple static fileserver and directory index server in python (WSGI app)
About
Often for testing you will want a static fileserver and directory index as part of your WSGI stack. In addition, you may have requirements to run such as part of a production WSGI stack. FileServer fits these needs.
Motivation
I needed a directory index server a la Apache to test a PyPI clone I was using. After surveying what was out there, there didn’t seem anything out there that was easily consumable for my purposes. So I wrote one only depending on webob .
Contents
from fileserver import * should give you access to all of the usable components of fileserver:
file_response: return a webob response object appropriate to a file name
FileApp: WSGI app that wraps file_response
Directory Server: serves a directory tree and generated indices
main: command line entry point
FileApp and file_response are heavily borrowed from http://docs.webob.org/en/latest/file-example.html . I also borrowed from Paste’s StaticURLParser and static.Cling.
In addition there is a command line script, serve, which may be used to serve a directory with the wsgiref server.
Tests
doctests and a test runner, test.py, exist in the tests/ subdirectory of http://k0s.org/hg/FileServer . I currently use paste.fixture.TestApp to mock requests and inspect responses, but should probably move to WebTest .
Other Projects
While I didn’t find them suitable for my use, there are other standalone static fileservers available for python:
Paste StaticURLParser
Jeff Hammel
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file FileServer-0.3.tar.gz
.
File metadata
- Download URL: FileServer-0.3.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed733028766915f794544dfe4af8b3824ddc7c2d072ee5f18e4e4fd0ddbb486a |
|
MD5 | 06299176dd2486d1729de6c93482e4f3 |
|
BLAKE2b-256 | 4ee5b80f4a307e67dab2b770f3f49af3cd67ad8269356b6df08a19dca3605fbf |