https协议访问和基于域名的多服务部署
- https协议访问
- 1、申请SSL证书
- 2、ngxin.conf配置
- 基于域名的多服务部署
- 1、nginx.conf配置
https协议访问
1、申请SSL证书
2、ngxin.conf配置
http {
include mime.types;
default_type application/octet-stream;
server {
listen 443 #https协议的默认端口;
server_name www.baidu.com #域名;
ssl on #开启ssl;
ssl_certificate /usr/local/nginx3/conf/cert/asdasdadsa.pem; #证书所在位置
ssl_certificate_key /usr/local/nginx3/conf/cert/asdasdadsa.key; #证书所在位置
ssl_session_timeout 5m; #缓存有效期
ssl_protocols SSLv2 SSLv3 TLSv1; #安全链接可选的加密协议
ssl_ciphers HIGH:!aNULL:!MD5; #加密算法
ssl_prefer_server_ciphers on; #使用服务器端的首选算法
location / {
#add_header Access-Control-Allow-Origin *;
#add_header Access-Control-Allow-Credentials 'true';
#add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
#add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
proxy_pass http://bsa-mobile; #来自jsp请求交给tomcat处理
proxy_redirect off;
proxy_set_header Host $host; #后端的Web服务器可以通过X-Forwarded-For>获取用户真实IP
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m; #允许客户端请求的最大单文件字节数
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 6 32k; #proxy_buffers缓冲区,网页平均在32k以下的话>,这样设置
proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传
}
}
基于域名的多服务部署
1、nginx.conf配置
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
server {
listen 80;#相同的端口
server_name www.baidu.com; #服务一的域名
location / {
root /baidu/dist; #服务一的前端地址
index index.html index.htm;
try_files $uri $uri/ /index.html; #刷新后不404
}
}
upstream www-admin {
server localhost:7444; #后台程序启动后的端口
}
server {
listen 80; #相同的端口
server_name du.baidu.com; #服务二的域名
#配置为前端的访问路径
location / {
root /www/dist;#服务二的前端地址
index index.html index.htm;
try_files $uri $uri/ /index.html; #刷新后不404
}
#配置后台的访问路径,这样不用在服务器的防火墙开放一个端口了
location /manage-admin/ {
proxy_pass http://www-admin; #代理,在上面upstream 配置
proxy_http_version 1.1; # http版本 wss
proxy_set_header Upgrade $http_upgrade; # 升级协议头 兼容wss
proxy_set_header Connection upgrade; # 升级协议头 兼容wss
proxy_redirect off;
proxy_set_header Host $host; #后端的Web服务器可以通过X-Forwarded-For>获取用户真实IP
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m; #允许客户端请求的最大单文件字节数
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout 1800; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_read_timeout 1800; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 6 32k; #proxy_buffers缓冲区,网页平均在32k以下的话>,这样设置
proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传
}
}
}