常规操作:
加一个路径,作为新版本的访问方式,配置nginx实现
nginx 的location目录增加 /new的配置,直接代理到新版本;
旧版直接通过域名访问;eg:www.test.com
新版通过域名+/new访问:eg:www.test.com/new
server {
listen 6600;
location ~ /new{
root /myworkbase/project_new/dist;
}
}
神仙操作:
1、新旧版本的切换设置cookie,通过isNew来进行标记
2、nginx中获取标记的方式$cookie_isNew;
3、默认进入旧版,旧版访问方式:www.test.com;
神奇的一幕发生了,你点击进入新版,新版的域名还是www.test.com,而且域名后边也没有二级目录,展示的效果就是新版,是不是很惊喜呢
server {
listen 6610;
server_name localhost;
location / {
# isNew不等于1的时候就默认用老版本
if ( $cookie_isNew != "1" ) {
root E:/gps-web-en-newEdition/build;
}
# isNew等于1就加载新版本
if ( $cookie_isNew = "1" ) {
root E:/code/wanwaygps-web/dist;
}
# 因为新版本里面没有indexv2.html所有放到最前面,不然老版本会加载index.html
index indexv2.html index.html;
}
}