我希望测试托管在防火墙后面的某些 Web 应用程序的浏览器兼容性。
我在想,在我的机器上从 GitHub 安装和设置modern.IE 之后,应用程序位于同一防火墙后面(注意:应用程序不在我的机器上,无法通过 localhost 访问),我将能够测试它们……但到目前为止,我一直受到问题的困扰。
在我向这个很棒的 stackoverflow 网站询问诊断这些问题的问题之前(几天来,我一直在阅读并尝试来自整个网络的建议),我想确认我正在尝试做的事情实际上是可能的。
如果在防火墙后面的机器上正确安装和配置了modern.IE,它是否可以用于测试也在该防火墙后面但在该机器上本地不可用的站点/应用程序?
感谢您的时间。
更新,详细说明我遇到的问题、我采取的一些步骤以及我的最新结果:
我已经使用 npm/nodejs 多次安装了modern.IE 应用程序,每次都解决了之前的安装问题,例如设置代理、获取适用的 vcbuild.exe 文件、安装 Python、更新路径等。每次我都这样做了一个新的安装,我从一个新版本的modern.IE 文件开始。
-在我最近的安装之后,我没有收到任何错误,但确实收到了以下警告,在研究它们之后,我找不到解决它们的方法,但我继续进行,希望它们不会导致致命问题:
\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(1146) : 警告 C4267: 'argument' : 从 'size_t' 转换为 'int',可能丢失数据 [C:\ie11\node_modules \jsdom\node_modules\contextify\build\contextify.vc xproj] C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xlocale(337):警告 C4530:使用 C++ 异常处理程序,但展开语义是未启用。指定 /EHsc [C:\ie11\node_modules\jsdom\node_modules\contextify\build\context ify.vcxproj] C:\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(934):警告 C4244 : 'initializing' : 从 '__int64' 到 'int' 的转换,可能有大量数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextif y.vcxproj] argument' :从 'size_t' 到 'int' 的转换,可能丢失数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextify.vc xproj] C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xlocale(337):警告 C4530:使用了 C++ 异常处理程序,但未启用展开语义。指定 /EHsc [C:\ie11\node_modules\jsdom\node_modules\contextify\build\context ify.vcxproj] C:\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(934):警告 C4244 : 'initializing' : 从 '__int64' 到 'int' 的转换,可能有大量数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextif y.vcxproj] argument' :从 'size_t' 到 'int' 的转换,可能丢失数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextify.vc xproj] C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xlocale(337):警告 C4530:使用了 C++ 异常处理程序,但未启用展开语义。指定 /EHsc [C:\ie11\node_modules\jsdom\node_modules\contextify\build\context ify.vcxproj] C:\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(934):警告 C4244 : 'initializing' : 从 '__int64' 到 'int' 的转换,可能有大量数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextif y.vcxproj] \ie11\node_modules\jsdom\node_modules\contextify\build\contextify.vc xproj] C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xlocale(337):警告 C4530:使用了 C++ 异常处理程序,但未启用展开语义。指定 /EHsc [C:\ie11\node_modules\jsdom\node_modules\contextify\build\context ify.vcxproj] C:\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(934):警告 C4244 : 'initializing' : 从 '__int64' 到 'int' 的转换,可能有大量数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextif y.vcxproj] \ie11\node_modules\jsdom\node_modules\contextify\build\contextify.vc xproj] C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xlocale(337):警告 C4530:使用了 C++ 异常处理程序,但未启用展开语义。指定 /EHsc [C:\ie11\node_modules\jsdom\node_modules\contextify\build\context ify.vcxproj] C:\ie11\node_modules\jsdom\node_modules\contextify\node_modules\nan\nan.h(934):警告 C4244 : 'initializing' : 从 '__int64' 到 'int' 的转换,可能有大量数据 [C:\ie11\node_modules\jsdom\node_modules\contextify\build\contextif y.vcxproj]
以下是我在不同类型的网站上运行modern.IE 时得到的结果类型:
外部/开放网站,google.com:
{“statusCode”:“无响应”,“消息”:“发现错误:错误:连接 ECONNREFUSED”}
内部站点,在我的计算机也在防火墙后面,xxxx.xxxx.com,我收到以下错误:
C:\ie11>node app.js Server started on port 1337 To scan a private url go to http://localhost:1337/ and follow the instructions
C:\ie11\lib\checks\check-compatlist.js:34
return this[0].attribs['http-equiv'].toLowerCase() === 'x-ua-compatibl
^ TypeError: Cannot read property 'attribs' of undefined
at Object.<anonymous> (C:\ie11\lib\checks\check-compatlist.js:34:23)
at filterFn (C:\ie11\node_modules\cheerio\lib\api\traversing.js:288:20)
at Function.filter (C:\ie11\node_modules\cheerio\node_modules\lodash\dist\lo dash.js:3150:15)
at exports.filter (C:\ie11\node_modules\cheerio\lib\api\traversing.js:298:17 )
at Object.initiate [as check] (C:\ie11\lib\checks\check-compatlist.js:33:51)
at C:\ie11\app.js:166:41
at Array.forEach (native)
at C:\ie11\app.js:164:15
at process._tickCallback (node.js:415:13)
在稍微研究了上述错误之后,我从 /lib/checks/ 中删除了 check-compatlist.js,这产生了一些积极但令人费解的结果......
检查 google.com 时,我仍然收到与上述相同的错误...但是,现在我可以扫描我们的内部站点,减去 check-compatlist.js 文件提供的功能。