各位JMP用户大家好。我们最近遇到了一个JMP 18.2.2及更高版本特有的网络安全问题。这个问题是由于JMP的一些改动导致的,我们一直在与JMP技术支持沟通。目前看来问题仍然出在我们这边,可能是防火墙或代理的问题。所以想了解一下其他JMP用户是否也遇到过同样的问题,以及他们是否已经通过IT部门解决了这个问题。我的系统是Windows 11。
启动 JMP18.2.2 时,会出现 10 秒的停顿。日志中显示:
获取https://my.jmp.com/
连接超时,时间为 10003 毫秒。
奇怪的是,我们可以很容易地从浏览器访问“my.jmp.com”,浏览器本身并没有被阻止,但是某些通信协议或握手却被阻止了。
之后我们仍然可以使用 JMP。只是每次启动时需要等待 10 秒钟,这只是一个小小的麻烦。
我们可以使用 JSL 中建议的新 HTTP 请求测试来复现该问题:
Names Default To Here( 1 );
baseURL = "https://my.jmp.com";
request = New HTTP Request( URL( baseURL ), Method( "GET" ), Timeout (5) );
request << Send;
Write( "\!n" || Char( request << Get Status Message ) || "\!n" );
然后我们进入 JSL 脚本编辑器嵌入的日志(注意,我将超时时间更改为 5 秒以加快测试速度)
获取https://my.jmp.com/
连接超时,耗时5007毫秒。
如果我们输入代理和端口值,就可以让脚本无超时地运行:
获取https://my.jmp.com/
通过:“我们的代理”……
但是保存首选项后,再次启动 JMP18.2.2 时,10 秒超时时间并不会改变。
即将推出的 JMP19 版本情况会更糟。现在需要两次调用,总共延迟 20 秒。
获取https://my.jmp.com/
连接超时,耗时10007毫秒。
GET https://activate.jmp.com/_jmpsoftwarestore/cgi-bin/go.cgi/webstore/XMLActivation
连接超时,时间为 10015 毫秒。
还有其他人遇到过这个问题吗?特别是,用户端是否有解决方法?
供您参考,如果您获得了 JMPStartup 文件(JMP 支持人员告诉我如何保存),在这些步骤中,“checkForInternet” 会出现 10 秒的延迟。
2025-10-13T14:39:46.774Z - 许可证检查
2025-10-13T14:39:46.774Z - 身份验证:检查已保存的许可证
2025-10-13T14:39:46.784Z - 身份验证 VL1:有效
2025-10-13T14: 39: 46.784Z - checkForInternet:正在启动
2025-10-13T14: 39: 56.855Z - checkForInternet(MyJMP): 状态 = 28
2025-10-13T14: 40: 06.900Z - checkForInternet(Authorization): 状态 = 28
2025-10-13T14:40:06.900Z - 授权:有效许可证
2025-10-13T14:40:06.905Z - 身份验证 VL2:有效
2025-10-13T14:40:06.905Z - 授权:产品:JMP 名称:JMP 版本:19
有没有办法在不使用代理的情况下屏蔽该地址?也许是我没找到正确的方法。
是的,我们已经和网络管理员沟通过了。他们移除了所有代理屏蔽,我们能够访问几个通常无法访问的网站,但JMP的握手仍然被阻止了。我可以在浏览器中打开这些网站,只是JMP启动时无法检测到某些内容。我可以使用上面提到的JMP脚本轻松ping通这些网站。管理员说他们没有屏蔽my.jmp.com,但也许他们忽略了一些其他的网络安全设置。
我可能没有正确地向我们的网络管理员传达发生的情况,所以想知道是否有人遇到过类似的情况并解决了它。
大多数网络不需要代理,但每个网络的情况可能有所不同。
另一点需要检查的是安全证书。您使用的是https地址,这意味着已强制执行SSL,并且使用了经过验证的证书。
您可以尝试:
request = New HTTP Request( URL( baseURL ), Method( "GET" ), Timeout (5), Insecure(1) );
这将关闭 SSL 证书验证。这并非长久之计,但可以让您知道该网站是被屏蔽还是可以建立HTTPS 连接。
您能否尝试通过禁用网络连接(例如注销 Wi-Fi 或断开 LAN 电缆)来加快启动速度?
ping 命令和 https 的“get”请求并不相同。
如果您熟悉 curl,我可以给您提供一个与 HTTP Request 功能等效的命令行示例。顺便问一下,您的浏览器是否设置了代理?(例如,使用 HTTP 地址或 .pac 文件?)或者您在首次访问该网站时是否收到过“接受风险并继续”的提示(浏览器只会提示一次)?如果您在浏览器中设置了代理,那么 HTTP Request 也必须设置代理。如果您收到过“接受风险并继续”的提示,那么问题可能出在您的证书链上。