nginx配置 http转https 代理指定路径
时间: 2023-09-19 11:11:01 浏览: 175
你可以使用以下配置将HTTP请求转发到HTTPS,并代理指定路径:
```
server {
listen 80;
server_name example.com;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /path/to/ssl_certificate.crt;
ssl_certificate_key /path/to/ssl_certificate.key;
location /proxy-path {
proxy_pass http://backend-server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
```
在这个示例中,我们配置了两个服务器块。第一个服务器块监听HTTP的80端口,将所有请求重定向到HTTPS的443端口。第二个服务器块监听HTTPS的443端口,并配置SSL证书和密钥路径。
`location /proxy-path`指令用于匹配代理请求的特定路径。你需要将`/proxy-path`替换为你想要代理的路径。`proxy_pass`指令用于指定将请求转发到的后端服务器。
确保将`/path/to/ssl_certificate.crt`和`/path/to/ssl_certificate.key`替换为你自己的SSL证书和密钥的路径。
以上配置可以在nginx的配置文件中找到(通常是在`/etc/nginx/nginx.conf`或`/etc/nginx/conf.d/default.conf`中)。完成配置后,重新加载nginx配置使其生效。
注意:这只是一个示例配置,你需要根据你的实际需求进行适当的修改和调整。
阅读全文