Skip to main content

Like pypiserver, but works behind a proxy with relative href addresses. Uses aiohttp.

Project description

aiopypiserver

A basic PyPi server using aiohttp to serve web pages. Intended to work behind an Apache proxy with relative href accessing. Available here of from PyPI.

Motivation

This is intended to work behind an Apache proxy. This means providing href links in the pages as relative links. i.e. ./packages/pkg_name.tar.gz and not /packages... .

This is addressed as provided by WSGI. Looking at the code I liked the idea of implementing with asyncio and aiohttp in preference to forking the pypiserver code.

Usage

usage: aiopypiserver [-h] [-p port] [-i address] [-u username] [-P password] [-v] [-q] [package_path]
Private PyPi  server.

positional arguments:
  package_path                       path to packages

options:
  -h, --help                         show this help message and exit
  -p port, --port port               Listen on port
  -i address, --interface address    Listen on address
  -u username, --username username   For uploading packages
  -P password, --password password   ...
  -v, --verbose                      set debug level
  -q, --quiet                        turn off access logging

Browse index at http://localhost:8080/.

Can also be run as a module as python -m aiopypiserver -h. Using the internal class is probably a bad idea ATM as the API is likely to change.

By default access logs are generated, as I find it useful to see these.

Apache

Add the following to your Apache config. This is the item for pypiserver that required wsgi.

ProxyPass /pypi/ http://127.0.0.1:8080/
ProxyPassReverse /pypi/ http://127.0.0.1:8080/

Thanks

Please let me know how you get on through the github page.

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

aiopypiserver-0.0.7.tar.gz (21.5 kB view hashes)

Uploaded Source

Built Distribution

aiopypiserver-0.0.7-py3-none-any.whl (21.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page