nginx的https和http共存反向代理配置
2024-10-19 02:20:40
一、设置http反向代理:
upstream ly.com {
server 192.168.1.100:;
server 192.168.1.101:;
} upstream home.ly.com {
server 192.168.1.100:;
server 192.168.1.101:;
}
对应增加:
server {
listen ;
server_name ly.com;
location / {
proxy_pass http://ly.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Cookie $http_cookie;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
和
server {
listen ;
server_name home.ly.com;
location / {
proxy_pass http://home.ly.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Cookie $http_cookie;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
二、配置ssl:
先开启nginx所在服务器443端口。
申请证书,FreeSSL有免费的证书可供使用,会提供一个key文件和一个pem文件。将证书放在conf目录下。
如果是整站https而不允许http的情况下可如下设置:
server {
listen ;
listen ;
ssl on;
ssl_certificate ****.pem; 证书文件1
ssl_certificate_key ****.key; 证书文件2,如果放到其他目录,这里加上目录名,如cert/c.key
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1. TLSv1.;
ssl_prefer_server_ciphers on;
如果要共存只需将前三行改成:
server {
listen ;
listen ssl;
#ssl on;
意思是只有443端口是https方式80端口还是http方式访问。
另开启了ssl,网站就不能有非https的资源引用了。
最新文章
- VB.net 2010下关联与程序图标设置
- 基于android studio编译工具下的android开发之IBeacon 例子
- Windows平台下Qt中glut库的使用
- Oracle EBS Form Builder使用Java beans创建窗体
- HTML5的拖拽时间 ondragstart
- Worker 工作 后台js 工作
- 深入ThreadLocal之三(ThreadLocal可能引起的内存泄露)
- CentOS 下如何查看并清理系统内存空间
- SharedPreference.Editor的apply与commit方法不同之处
- python tab补全
- 基于visual Studio2013解决C语言竞赛题之1076放鞭炮
- windows phone (13) 样式继承
- Linux上安装Redis
- windows 10下通过python3.6成功搭建jupyter 服务器
- java日期操作常用工具
- Unity添加多个可视镜头Preview功能(二)
- linus 下redis守护进程启动
- OpenGL中投影矩阵基础知识
- sqlite 一条记录判断一个字段是否like另一个字段
- java-线程(runoob.com)