nginx实现网站维护跳转及案例演示

######永久维护
server {
    listen 80;
    server_name url.oldxu.com;
    root /data;

	rewrite ^(.*)$ /wh.png break;


	set $language /default;
	if ( $http_accept_language ~* zh ) {
		set $language /zh;
	}
	if ( $http_accept_language ~* en ) {
		set $language /en;
	}
	if ( $http_accept_language ~* ja ) {
		set $language /jp;
	}

	rewrite ^/$ $language;
	
	location / {
		index index.html;
	}
}

######临时维护(jd)
	#error_page 403 404 500 502 /wh.png;
    #error_page 403 404 500 502 http://$http_host;

    error_page 403 404 500 502 @temperror;
    location @temperror {
            rewrite ^(.*)$ http://$http_host;
    }
需求: 用户通过手机设备访问url.oldxu.com,跳转至url.oldxu.com/m

server {
    listen 80;
    server_name url.oldxu.com;
    root /data;

    if ($http_user_agent ~* "android|iphone|ipad") {
            rewrite ^/$ /m;
    }
}

需求: 用户通过手机设备访问url.oldxu.com,跳转至m.oldxu.com

server {
    listen 80;
    server_name url.oldxu.com;
    root /data;

	if ($http_user_agent ~* "android|iphone|ipad") {
		rewrite ^/$  http://m.oldxu.com;
	}
}
server {
	listen 80;
	server_name m.oldxu.com;
	root /data/m;
	
	location / {
		index index.html;
	}
}


#需求: 用户访问oldxu.com/test,跳转至https://xuliangwei.com
	
location------------------------------------------------------------------
        location /test {
                #rewrite ^(.*)$ https://www.xuliangwei.com/;
                return 302 https://www.xuliangwei.com/;
        }
if ------------------------------------------------------------------------
	server {
		listen 80;
		server_name url.oldxu.com;
		root /data;

		if ($request_uri ~* "^/test") {
			#rewrite ^(.*)$ https://www.xuliangwei.com/;
			return 302 https://www.xuliangwei.com/;
		}
		location / {
			index index.html;
		}
	}
posted @   老王教你学Linux  阅读(278)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示