Nginx 配置域名带参数 301 跳转教程

本文将介绍如何使用 Nginx 配置域名带参数的 301 跳转,包括所有请求的重定向和特定参数的重定向,以及性能方面的注意事项。

所有请求的重定向

要实现所有域名带参数的 301 跳转,可以在 Nginx 配置文件中添加以下代码:

server {
    listen 80;
    server_name example.com;
    return 301 $scheme://$host$request_uri;
}

这段代码将会把所有访问 example.com 的请求都重定向到相同的 URL,包括带参数的 URL。例如,访问 example.com/?id=123 将会被重定向到 example.com/?id=123。

特定参数的重定向

如果你只想重定向带有特定参数的 URL,可以使用以下代码:

server {
    listen 80;
    server_name example.com;
    if ($args ~* 'id=123') {
        return 301 $scheme://$host$request_uri;
    }
}

这段代码将会把所有带有 id=123 参数的请求重定向到相同的 URL。其他请求将不会被重定向。

性能注意事项

需要注意的是,使用 if 语句会对 Nginx 的性能产生一定的影响,所以最好只在必要的情况下使用。

总结

本文介绍了如何使用 Nginx 配置域名带参数的 301 跳转,包括所有请求的重定向和特定参数的重定向。在使用 if 语句时需要注意性能问题,尽量避免不必要的判断。

Nginx 配置域名带参数 301 跳转教程

原文地址: https://www.cveoy.top/t/topic/nS6r 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录