Node.js 将弹性Beanstalk协议更改为TCP/SSL,现在S3连接不再工作
我最近不得不更改dev服务器上的协议以启用Node.js 将弹性Beanstalk协议更改为TCP/SSL,现在S3连接不再工作,node.js,amazon-web-services,amazon-s3,parse-platform,amazon-elastic-beanstalk,Node.js,Amazon Web Services,Amazon S3,Parse Platform,Amazon Elastic Beanstalk,我最近不得不更改dev服务器上的协议以启用ParseLiveQuery,我注意到来自应用程序的请求不再接收图像,并且尝试保存也失败了 请求我得到 [错误]:响应状态代码不可接受:403(代码:1,版本:1.17.1) 正在尝试保存我得到的图像: [错误]:无法存储文件。(代码:130,版本:1.17.1) 2018-08-16 14:22:54.361221-0400 myApp[83331:20699254]正在出售最新版本 可选(错误域=解析代码=130“无法存储文件”。用户信息={Code
ParseLiveQuery
,我注意到来自应用程序的请求不再接收图像,并且尝试保存也失败了
请求我得到
[错误]:响应状态代码不可接受:403(代码:1,版本:1.17.1)
正在尝试保存我得到的图像:
[错误]:无法存储文件。(代码:130,版本:1.17.1)
2018-08-16 14:22:54.361221-0400 myApp[83331:20699254]正在出售最新版本
可选(错误域=解析代码=130“无法存储文件”。用户信息={Code=130,temporary=0,错误=无法存储文件,NSLocalizedDescription=无法存储文件。})
以下是我的端口协议设置:
还有我要发布的代码
let obj = PFObject(className: "GroupConvos")
obj.setObject("The Picnic", forKey: "groupName")
obj.setObject("zackshapiro created 'The Picnic'", forKey: "lastMessageText")
obj.setObject("system", forKey: "lastMessageSender")
let img = UIImage(named: "picnic")!
let data = UIImageJPEGRepresentation(img, 0.8)!
let file = PFFile(name: "avatar", data: data)!
// let file = try! PFFile(name: "avatar123456", data: data, contentType: "image/jpeg")
file.saveInBackground { (completed, error) in
print(error)
if completed {
obj.setObject(file, forKey: "groupImage")
obj.saveInBackground(block: { (completed, error) in
if completed {
print("done")
}
})
}
}
myindex.js中的s3适配器代码没有更改
var S3Adapter = require('parse-server').S3Adapter;
var s3Adapter = new S3Adapter(
"my bucket",
{ directAccess: true,
baseUrl: 'http://someURL1234.cloudfront.net'
}
);
然后我将其插入我的ParseServer
对象
知道这是怎么回事吗?该问题在协议仍然是HTTP(80)和HTTPS(443)的生产环境中不存在
谢谢您的问题是由于对HTTPS(SSL)通信和HTTP通信使用相同的端口80造成的。您需要在后端设置HTTPS和SSL证书
当您在负载平衡器中启用TCP侦听器(第4层侦听器)时,LB只是将连接直接传递到后端。这也意味着SSL证书将不会在LB(用于TCP侦听器)上使用,而是必须在后端服务器上设置。因此,如果我理解正确,我还需要一个打开证书的HTTPS端口?正确。SSL终止发生在您的后端,而不是LB。我是否也可以在443处使用该附加端口?看起来是否。您建议我如何将其与现有端口一起设置以使其全部工作HTTPS是端口443(默认)。您可以使用您想要的任何可用端口,但请确保您理解其含义。对于普通的web服务器,请使用HTTP(80)和HTTPS(443)。