手机版 收藏 导航

Nginx 如何实现 URL 重写

原创   www.link114.cn   2025-04-16 12:19:12

Nginx 如何实现 URL 重写

Nginx 是一款功能强大的网络服务器软件,除提供基本的 HTTP 服务外,还具有强大的反向代理和负载均衡等功能。其中 URL 重写是 Nginx 的一个重要功能,可以帮助我们实现各种 URL 转换和优化。

在 Nginx 中,可以使用 rewrite 指令来实现 URL 重写。该指令的语法如下:

rewrite regex replacement [flag];

其中 regex 是一个正则表达式,用来匹配 URL;replacement 是替换后的 URL;flag 则是一些可选的标志,用来控制重写的行为。常用的标志包括 lastbreakredirectpermanent

举个例子,假如我们有一个网站,希望把 /articles/123 这样的 URL 重写为 /article.php?id=123,可以使用如下的 Nginx 配置:

location /articles/ {
    rewrite ^/articles/(\d+)$ /article.php?id=$1 last;
}

通过这个配置,当用户访问 /articles/123 时,Nginx 就会将其重写为 /article.php?id=123,并且使用 last 标志告诉 Nginx 停止后续的重写操作。

Nginx 提供强大的 URL 重写功能,可以帮助我们实现各种复杂的 URL 转换和优化,提高网站的可用性和用户体验。