使用我们的应用程序的API和VPN软件的奇怪问题

时间:2016-12-14 12:48:10

标签: php api ssl apache2 vpn

我为客户编写了一个Web应用程序,其中包含 JavaScript前端 PHP后端(API)。

客户的员工在使用互联网时必须运行VPN软件(称为Pulse)。

我的(前端和后端)应用程序在Apache2上运行,并使用Let's Encrypt SSL证书来提供HTTPS请求。到目前为止,一切都在我的测试计算机上完美运行。

使用此VPN软件在客户的计算机上测试Web应用程序时,我们遇到了一些奇怪的问题:

  • 使用Firefox,他们无法访问任何HTTPS安全网站。 Firefox抛出证书错误。查看证书时,它说:Their Company而不是Let's Encrypt发布。这不是我的问题,因为它发生在所有网站上 - 但仍然很奇怪?

  • 使用Internet Explorer 11,没有任何证书错误或警告。但Web应用程序表现得很奇怪。更具体地说,后端的空API响应没有回来(IE11中的开发人员工具说:“等待响应”)。即使服务器已经完成了回复,请求也似乎永远不会完成。

  • 一旦服务器回复非空的响应,IE11似乎没有问题。

  • 更奇怪的是,这个空响应问题仅在运行此VPN软件时出现。没有该软件,所有请求都可以正常工作。

您认为这是我的应用程序或VPN软件的问题吗?

这是一个示例请求,会引发这些奇怪的问题。在IE11中结合这个软件,我不会得到响应,否则我会这样做。

请求

POST https://myapplication.com/api/login/ HTTP/1.1
Host: myapplication.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: https://myapplication.com/frontend/
Content-Type: application/json
Content-Length: 66
DNT: 1
Connection: keep-alive

{"email":"myemail","password":"mypassword"}

响应

HTTP/1.1 204 No Content
Date: Wed, 14 Dec 2016 12:28:51 GMT
Server: Apache/2.4.18 (Ubuntu)
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, session
Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS
Content-Length: 20
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: application/json

请注意,我在API网络服务器上启用了CORS。但我无法想象这是问题所在。

0 个答案:

没有答案