关于Nginx使用HTTPS部署多个前端项目解决办法

关于Nginx使用HTTPS部署多个前端项目解决办法

nginx.conf配置文件

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  600;
    client_max_body_size 50m;
    client_header_timeout   1m; 
    client_body_timeout     1m; 
    proxy_connect_timeout   60s; 
    proxy_read_timeout      1m; 
    proxy_send_timeout      1m;
	
	gzip on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 2;
    gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
    gzip_vary on;
    gzip_proxied   expired no-cache no-store private auth;
    gzip_disable   "MSIE [1-6]\.";
    server_tokens off;
	

    server {
        listen       端口号;
        server_name  ip或者域名;

		location / {
            root   /xxx/xxx/xxx;
			try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
		
		location /app {
            alias   /xxx/xxx/xxx;
			try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
		
		location /prod-api/{
			proxy_set_header Host $http_host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header REMOTE-HOST $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			#访问后端的ip
			proxy_pass http://ip:端口号/;
			add_header 'Access-Control-Allow-Methods' 'GET,POST,PUT,DELETE';
			add_header 'Access-Control-Allow-Headers' '*';
			add_header 'Access-Control-Allow-Origin' 'http://43.136.245.22:8089' always;
			add_header 'Access-Control-Allow-Credentials' 'true' always;
		}			
		rewrite ^(.*)$ https://$host$1 permanent;
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
		
    }
		#HTTPS配置
	server {
		 #SSL 默认访问端口号为 443
		 listen 443 ssl; 
		 #请填写绑定证书的域名
		 server_name 你自己的ip或者域名; 
		 #请填写证书文件的相对路径或绝对路径
		 ssl_certificate  /xxx/xxx/xxx;
		 #请填写私钥文件的相对路径或绝对路径
		 ssl_certificate_key  /xxx/xxx/xxx;
		 ssl_session_timeout 5m;
		 #请按照以下协议配置
		 ssl_protocols TLSv1.2 TLSv1.3; 
		 #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
		 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
		 ssl_prefer_server_ciphers on;
		#这里跟上面一样,上面填的啥,这里就填啥
		location / {
			 #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
			 #例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
			 root /xxx/xxx/xxx;
			 index  index.html index.htm;
			 #防止刷新出现404
			 try_files $uri $uri/ /index.html;
		}
		
		location /app {
			 #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
			 #例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
			 alias /xxx/xxx/xxx;
			 index  index.html index.htm;
			 #防止刷新出现404
			 try_files $uri $uri/ /index.html;
		}
		#反向代理配置,api,因为前端用/api代替了下面的地址,localhost可以填ip
		location /prod-api/ {
			proxy_pass http://ip:端口号/;
		}
	}	

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值