Nginx 配置https并反向代理多台服务器
正向代理是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
什么是正向代理
正向代理是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
什么是反向代理
反向代理实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
直接上配置文件,如果你问我配置文件在哪里…呵呵
/etc/nginx/nginx.conf
不相信,就找一下.
server {
listen 80;
server_name localhost;
#重写协议
rewrite ^/(.*)$ https:$host/$1 redirect;
#总结:只要访问该服务器80端口我们都会让客户端重定向到https去
}
server {
listen 443;
server_name www.well-known.me well-known.me;
ssl on;
#配置不同的证书
ssl_certificate /etc/letsencrypt/live/well-known.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/well-known.me/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_prefer_server_ciphers on;
location / {
#本地的某一个端口,也可以是内网的其他服务器
proxy_pass http://127.0.0.1:8***;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
index index.html index.htm;
}
}
server {
listen 443;
server_name blog.well-known.me;
ssl on;
ssl_certificate
#配置不同的证书
/etc/letsencrypt/live/blog.well-known.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/blog.well-known.me/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
#本地的某一个端口,也可以是内网的其他服务器
proxy_pass http://127.0.0.1:81**;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
index index.html index.htm;
}
解释一波: 注意看注释