常规操作:
加一个路径,作为新版本的访问方式,配置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;
}
}

文章介绍了如何使用nginx配置新旧版本的访问路径,旧版通过域名直接访问,新版则添加了/new的路径。同时,通过设置cookie的isNew标记来控制新旧版本的切换。在nginx配置中,根据$cookie_isNew的值决定加载E:/gps-web-en-newEdition/build(旧版)或E:/code/wanwaygps-web/dist(新版)。默认情况下,如果没有isNew=1的cookie,用户将访问旧版,而当cookie标记为isNew=1时,用户将看到新版,尽管域名仍显示为www.test.com,但实际内容为新版。
741

被折叠的 条评论
为什么被折叠?



