Python 我应该授权哪个url在防火墙后使用pip?

Python 我应该授权哪个url在防火墙后使用pip?,python,pip,firewall,Python,Pip,Firewall,我有一个服务器,我想在上面使用Python,它位于公司防火墙后面。我不想搞砸它,我唯一能做的就是为特定的URL/域设置防火墙例外 我还想使用pip或easy_install访问位于PYPI上的软件包。因此,您知道除了*.pypi.python.org之外,我应该要求在防火墙的例外规则中列出哪个URL吗?您需要打开防火墙,以查看需要安装的任何软件包的下载位置,或者连接到已授予访问权限的代理服务器 请注意,下载位置不一定在PyPI上。Python包索引是一种元数据服务,它碰巧也为索引包提供存储。因此

我有一个服务器,我想在上面使用Python,它位于公司防火墙后面。我不想搞砸它,我唯一能做的就是为特定的URL/域设置防火墙例外


我还想使用pip或easy_install访问位于PYPI上的软件包。因此,您知道除了*.pypi.python.org之外,我应该要求在防火墙的例外规则中列出哪个URL吗?

您需要打开防火墙,以查看需要安装的任何软件包的下载位置,或者连接到已授予访问权限的代理服务器

请注意,下载位置不一定在PyPI上。Python包索引是一种元数据服务,它碰巧也为索引包提供存储。因此,并非所有在PyPI上编制索引的软件包都是从PyPI下载的,下载位置可以是internet上的任何位置


我建议您先打开
pypi.python.org
,然后当单个软件包安装失败时,检查其pypi页面并添加列出的下载位置。

我已经解决了将这些域添加到防火墙白名单中的问题:

  • pypi.python.org
  • pypi.org
  • pythonhosted.org

除了*.pypi.python.org之外,你是什么意思?这是PyPI URL。@Katrielex:PyPI是元数据索引,虽然大多数包也已上载到PyPI,但这是可选的。其他包的负载由它们自己的域提供
pip
将查找下载位置,并联系正确的位置获取。这可以在互联网上的任何地方找到。@MartijnPieters是的,我同意。我把PYPI上的OP声明
读为PYPI上的
,因为显然没有办法添加防火墙规则“允许任何PYPI链接的东西”。好吧,我的错。我不知道上传到PyPI只是可选的,尽管我注意到pip在其他服务器上跳转下载。。。谢谢你的澄清。谢谢你的回答。您认为一个好的替代方法是导出PIP\u DOWNLOAD\u CACHE=$HOME/.PIP\u DOWNLOAD\u CACHE
,在可以访问internet的机器上创建一个虚拟环境,执行
PIP install-r requirements.txt
,并将此下载缓存复制到可以访问pypi的独立机器上吗(这样,如果更新的requirements.txt授权更新的软件包版本,我就可以检查是否没有更新的版本?@Marc oliviertieux:可以,是的。另一种选择是设置一个(作为请求的软件包的缓存代理)。我最后使用了这样的东西:(在可以访问web的服务器上制作)当我是隔离机器时,只有第二行。谢谢!我有同样的限制。有没有办法检查包裹的位置?@paolof89:添加
-v
开关(可以多次添加)要增加pip的详细性:
pip安装-v…
并查看它告诉您的信息。它将报告它尝试连接到的所有URL。