【问题标题】:While accessing my app using https then not working my app使用 https 访问我的应用程序时,我的应用程序无法运行
【发布时间】:2016-05-10 13:48:20
【问题描述】:
我正在使用 java GWT 开发应用程序引擎项目。我正在使用 https 访问我的应用程序,然后我无法访问我的应用程序。为什么我没有使用 https 访问我的应用程序?
使用 https 浏览器显示访问我的应用时,如图所示
有什么帮助吗?
提前致谢
【问题讨论】:
标签:
java
google-app-engine
ssl
gwt
【解决方案1】:
哦,您在上一个问题中没有告诉您正在使用像 vijay.evadev014.appspot.com 这样的 4 级域,这很重要。 Google 为 apppot.com 配置 SSL 证书,仅适用于 3 级域,*.appspot.com
根据文档:
Google 不会为双通配符域颁发 SSL 证书
托管在 apppot.com 上。因此,对于 HTTPS,您必须使用字符串
“-点-”而不是“。”分离子域,如图所示
下面的例子。您可以使用简单的“。”使用您自己的自定义域
或使用 HTTP 地址。
所以如果你想使用这个证书,你应该使用像https://vijay-dot-evadev014.appspot.com这样的url
【解决方案2】:
正如您浏览器中的错误消息所述,证书公用名不匹配。您的应用程序为 vijay.evadev014.appspot.com 提供了证书,但您正在尝试访问 sample.myapp.appspot.com
有两种方法可以在生产环境中解决此问题:
- 获取 sample.myapp.appspot.com 的证书并确保您的应用程序提供该证书
- 更改您的配置,使 vijay.evadev014.appspot.com 指向您的应用程序并通过该地址访问它
如果只是为了快速测试,您可以随时点击高级并忽略此异常这不会解决其他用户的问题
【解决方案3】:
正如您提到的,您拥有 vijay.evadev014.appspot.com,它被称为 appspot.com 的二级子域。但是,appspot 使用通配符 SSL 证书和为 *.appspot.com 颁发的证书。
通配符 SSL 证书只能通过通用名称保护第一级子域。您应该通过一级子域(例如:vijayevadev014.appspot.com)来享受使用appspot的安全环境。