apache和mod_python的egg代理

iw.eggprox的Python项目详细描述


What is iw.eggproxy ?

eggproxy是apache mod_python的一个模块。它的目的是充当一个pypi 代理。

其主要思想是根据需要在本地镜像。在第一次运行时,它将下载pypi 索引并建立一页链接。当一个软件要求一个特定的包时, 版本,…如果需要,将由iw.eggproxy下载。所有文件都是 最终由apache作为静态内容提供服务。Eggproxy只负责 检查是否必须(并且可以)先下载它。

How to use iw.eggproxy ?

你需要apache的mod_python 3.3。它不能与以前的版本一起使用。

Debian Etch用户:Etch提供3.2,因此Etch用户必须获得源代码 从“lenny”(测试)打包并用dpkg buildpackage重新构建。请拿着 查看本文档中的相关部分以获取帮助。

配置文件:

目前它的位置固定在/etc/apache2/eggproxy.conf:

[default]
eggs_directory = /path/to/pypi
index = http://pypi.python.org/simple

# update information for files older than 24h
update_interval = 24

apache设置http://servername/pypi

Alias /pypi "/path/to/pypi"
<Directory "/path/to/pypi">
    Order allow,deny
    Allow from all
    SetHandler mod_python
    PythonFixupHandler iw.eggproxy.apache_handler::fixup_handler
    PythonInterpreter main_interpreter
    PythonOption URLPrefix /pypi
    PythonPath "sys.path+['/path/to/iw.eggproxy']"
</Directory>

apache必须能够写入“/path/to/pypi”!(通常apache用户是 www数据。要更新代理鸡蛋信息,必须添加脚本 eggproxy_update进入此用户的crontab。

mod_python update on Debian Etch:

来自Debian“Lenny”来源的快速构建说明:

$ sudo apt-get build-dep libapache2-mod-python
$ sudo apt-get install fakeroot

访问http://packages.debian.org/sources/lenny/libapache2-mod-python并获取 具有以下扩展名的文件:

  • .dsc
  • .orig.tar.gz
  • .diff.gz
$ wget http://ftp.de.debian.org/debian/pool/main/liba/libapache2-mod-python/libapache2-mod-python_3.3.1-3.dsc
$ wget http://ftp.de.debian.org/debian/pool/main/liba/libapache2-mod-python/libapache2-mod-python_3.3.1.orig.tar.gz
$ wget http://ftp.de.debian.org/debian/pool/main/liba/libapache2-mod-python/libapache2-mod-python_3.3.1-3.diff.gz
$ tar xpvzf libapache2-mod-python_3.3.1.orig.tar.gz
$ cd mod_python-3.3.1/
$ gzip -dc ../libapache2-mod-python_3.3.1-3.diff.gz |patch -p1
$ chmod +x debian/rules
$ dpkg-buildpackage -rfakeroot -b
$ cd ..

您应该有以下文件:

  • libapache2-mod-python_3.3.1-3_i386.deb
  • libapache2-mod-python-doc_3.3.1-3_所有.deb

最后一步是调用dpkg

$ sudo dpkg -i libapache2-mod-python_3.3.1-3_i386.deb

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何使用正则表达式将Java中的“aaabbbc”转换为“AabBc”?   eclipse如何将Java 1.6中创建的所有插件的Java编译级别从Java 1.6更改为Java 1.7   java在这个小程序中将类声明为公共类需要什么?   ipc Java类:如何创建一个返回字符串参数但也可以用作应用程序入口点的类?   java如何持久保存Lucene文档索引,以便在每次程序启动时不需要将文档加载到其中?   无法使用导入静态java引用我的枚举   java将字符串从args[0]转换为char,然后使用chars填充并打印二维数组   java类似于二进制数据的扫描器   Java Android查找文件扩展名   java在单元测试中使用Android SDK类   java如何将pdf文件转换为docx文件   java Thymeleaf:将参数添加到当前url   java toUpperCase()方法何时创建新对象?