微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 在服务模块中为REST服务器启用SSL时,不返回任何数据

我在CentOS上使用Drupal 6和最新的服务模块运行LAMP堆栈.在HTTP上,我运行的REST服务器工作正常并且按预期运行.

当我安装SSL证书时,我将所有端口80流量强制为443(SSL).这适用于Drupal但导致REST服务器不返回任何数据.当然,我已经删除了强制SSL,暂时允许HTTP和HTTPS.

我正在通过fiddler进行测试,当用于通过HTTP访问端点时,返回预期的数据.通过HTTPS测试我没有收到任何数据.我是否需要对REST服务器进行配置更改(即我在文档中遗漏了一些内容).

在此先感谢您的支持

编辑

为了清楚地显示差异,我向终点发出了一个匿名的POST请求(它可能是一个GET请求,终点没有真正的方法,但因此返回一条消息让我们知道它仍然存在).我得到了终点通过HTTP运行的成功消息.然而,HTTPS根本不返回任何数据.我在下面的图片显示了这一点.

HTTP

HTTPS

.conf SSL规则
这些行不再使用,而是在这里说明我在做什么.

#RewriteCond %{SERVER_PORT} !^443$
#RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

EDIT2:

我在Drupal论坛搜索http://drupal.org/node/704308中找到了相关内容

解决方法

你描述的内容听起来像是这两个中的一个

>有些东西没有收听它应该监听的端口.如果Apache将请求转发给损坏的套接字,那么我希望它会返回500错误代码,因此我们的目标是尝试找出消息的去向,应用程序正在侦听的端口,是否是REST应用程序甚至支持HTTPS握手,依此类推.
> Apache不会像在端口80上解释请求那样在端口443上解释您的请求.这听起来有点可疑,因为您说Drupal工作超过443但是您编写的内容根本不生成文件 – 如果Apache将您的API请求转发到您的Drupal应用程序,那么当它无法正确解释API请求时,您至少会看到标题,404等.

没有更多信息,我不确定我们可以提供帮助.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐