我在公司环境中使用代理:
$ printenv | grep proxy
http_proxy=http://aproxy.corproot.net:8080/
https_proxy=http://aproxy.corproot.net:8080/
wget
并尝试使用或从终端访问以下 2 个 URL curl
(其中的资源无法通过互联网访问):
https://artifactory.swisscom.com/api/npm/npm-remote/npm/-/npm-5.1.0.tgz
https://artifactory.swisscom.com/api/npm/npm-remote/npm/-/npm-5.10.0.tgz
第一个返回503服务不可用而第二个返回 200 并且文件被下载。
当从同一台计算机上的 Web 浏览器访问时(使用相同的 HTTP/S 代理设置),两个 URL 都会下载文件(在任何浏览器中:Chrome、Firefox、Safari)。此外,我的同事使用相同的操作系统版本(macOS Catalina 10.15.6)和与我相同的代理设置,可以从终端下载(wget
或)两个文件。curl
所以这不可能是 Artifactory 端的服务器错误或代理错误。一定是我这边的配置中断了对 URL 的访问npm-5.1.0.tgz
。
我的系统可能存在什么问题,或者我该如何排除故障才能确定问题所在?
npm-5.1.0.tgz
当我在终端中访问该 URL 时得到的结果是:
<HTML><HEAD>
<TITLE>ICAP Error</TITLE>
</HEAD>
<BODY>
<FONT face="Helvetica">
<big><strong></strong></big><BR>
</FONT>
<blockquote>
<TABLE border=0 cellPadding=1 width="80%">
<TR><TD>
<FONT face="Helvetica">
<big>ICAP Error (icap_error)</big>
<BR>
<BR>
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
An error occurred while performing an ICAP operation: File decompression/decode error; File: npm-5.1.0.tgz; Sub File: ; Vendor: Sophos, Plc.; Engine version: 3.79.0; Pattern version: 5.77.53271598.0; Pattern date: 2020/09/03 08:28:38
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
There could be a network problem, the ICAP service may be misconfigured, or the ICAP server may have reported an error.
</FONT>
</TD></TR>
<TR><TD>
<BR>
<FONT face="Helvetica">
Transaction ID: c096ba71d6c6f520-00000001bb135417-000000005f50eafc
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica" SIZE=2>
<BR>
For assistance, contact your network support team.<br><br>Your request was categorized by Blue Coat Web Filter as 'Technology/Internet'. <br>If you wish to question or dispute this result, please click <a href="http://sitereview.bluecoat.com/sitereview.jsp?referrer=136&url=https://artifactory.swisscom.com/api/npm/npm-remote/npm/-/npm-5.1.0.tgz">here</a>.
</FONT>
</TD></TR>
</TABLE>
</blockquote>
</FONT>
</BODY></HTML>
npm-5.10.0.tzg
成功的 URL ( ) 与失败的 URL ( )之间的差异npm-5.1.0.tgz
也可以在 Wireshark(网络检查工具)中看到:
成功的 URL (TCP FIN):
失败的 URL(加密警报和 TCP RST: