Amazon web services 配置nginx以允许自定义端口上的HTTPS通信
我对将nginx配置为将在自定义端口上接收的HTTPS流量转发到目标url的相同自定义端口号有疑问。我的情况如下Amazon web services 配置nginx以允许自定义端口上的HTTPS通信,amazon-web-services,nginx,nat,Amazon Web Services,Nginx,Nat,我对将nginx配置为将在自定义端口上接收的HTTPS流量转发到目标url的相同自定义端口号有疑问。我的情况如下 我在AWS有一个VPC。我在NAT(在我的例子中是Bastion服务器)实例上运行nginx,该实例接收HTTPS流量 VPC中的My app instance是nginx转发请求的目的地。它有两个自定义子域,一个用于单向SSL身份验证,另一个用于双向SSL身份验证 我在自定义端口上提供具有双向身份验证的URI,而不是443。在端口443上运行服务的URI使用单向SSL身份验证(服务
是否有任何nginx配置机制允许我将HTTPS请求发送到应用程序实例上的自定义端口?谢谢。我发现了问题。这就是我向服务器发送HTTPS数据包的方式。在我的Groovy代码中,HTTPBuilder的uri.port字段被设置为443而不是8000。在用8000替换之后,我的客户机可以发布到服务器。您是如何在groovy代码中使用客户机证书的?
server {
listen 8000;
server_name myserver.com;
ssl on;
ssl_certificate /path/to/server/cert;
ssl_certificate_key /path/to/server/key;
ssl_client_certificate /path/to/client/cert;
ssl_verify_client on;
#https requests to this URI gets redirected to port 443 by default
location /customUri1 {
# switch off logging
access_log off;
proxy_pass http://app-instance-ip:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
}
server {
listen 443;
server_name myserver.com;
ssl on;
ssl_certificate /path/to/server/cert;
ssl_certificate_key /path/to/server/key;
location /customUri2 {
# switch off logging
access_log off;
proxy_pass http://app-instance-ip:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto http;
}
}