【需求】
1、用户无感知:无需配置代理服务器,访问url及端口无变化;
2、同时转发http及https流量,且不使用自签发证书(安全需要)。
【方案】
1、反向代理:
a.本地修改hosts文件或配置DNS解析,将目的URL解析到Nginx服务器;
b.proxypass中使用$server_port实现端口无变化;
2、ssl preread模块,使用stream四层模块代替https七层模块,同时开启ssl预读功能(ssl_preread on),实现无证书代理https流量。
【CONF】
#user nobody;
worker_processes auto;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid log/nginx.pid;
events {
multi_accept on;
worker_connections 2048;
}
http {
server_tokens off;
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" &