如何为 pypi pip 搜索设置 devpi-server
Posted
技术标签:
【中文标题】如何为 pypi pip 搜索设置 devpi-server【英文标题】:how to setup devpi-server for pypi pip searching 【发布时间】:2014-07-31 04:09:50 【问题描述】:我正在使用a devpi-server 在本地缓存并使用 pip 安装 pypi 包。但是,当我使用 devpi 服务器搜索包时,出现以下错误:
pypi.xyz.com 是服务器的名称
ProtocolError: <ProtocolError for pypi.xyz.com:33141/root/pypi/+simple/: 405 Method Not Allowed>
请注意,安装工作正常
编辑:我正在使用允许通过在调用 pip 命令之前设置 http_proxy 来访问 pypi.xyz.com 的代理。代理工作正常并允许访问 pypi.xyz.com 服务器,因为您可以毫无问题地运行 pip install 命令。
pip.conf:
[global]
[install]
index-url = http://pypi.xyz.com:33141/root/pypi/+simple/
[search]
index = http://pypi.xyz.com:33141/root/pypi/+simple/
添加@JanVlcinsky 要求的说明: 1.使用pypi安装devpi 2.除了端口改变,没有修改默认设置 3. 当我使用 pip 并设置以下环境变量时,控制台出现协议错误
export http_proxy=http://localhost:33128
-
将端口更改为 33141 只是为了一些混淆安全,尽量避免使用默认值
它是一个 http_proxy(使用 squid 在本地运行)
【问题讨论】:
@askhool 提供更多细节。你是怎么安装devpi的,你有没有修改一些默认设置?您在哪里看到“ProtocolError” - 在控制台上,在日志中?最好提供完整的文本以及您如何称呼它。为什么要在端口 33141 上运行它,而默认端口是 3141。代理的设置是什么,代理的确切含义是什么(它是 HTTP 代理吗?)。它如何适用于浏览器中的其他 HTTP 请求。 @JanVlcinsky 1. 使用 pip install devpi 安装了 devpi 【参考方案1】:你可以在the official doc的“使用pip搜索”部分找到答案:
pip install -q -U devpi-web
devpi-server --stop
devpi-server --recreate-search-index
devpi-server --start
【讨论】:
以上是关于如何为 pypi pip 搜索设置 devpi-server的主要内容,如果未能解决你的问题,请参考以下文章
如何为 windows 下的 python 的 pip 工具设置代理服务器