【折腾】Nginx解析网址参数并跳转

吐槽/反馈/建议:咸鱼哪有心

演示网址: https://demo.wdssmq.com/?id=2887

对于如上地址,在Apache下可以使用如下规则重定向(301) 到伪静态地址。

RewriteCond %{QUERY_STRING} ^id=(.+)$
RewriteRule ^$ /post/%1.html [L,R=301]

至于Nginx,同时有$query_string$args两个变量用于获取网址参数,效果是一样的。

# page + post
if ($args ~* "id=\d+") {
    rewrite ^/$ $scheme://$host/post/$arg_id.html? permanent;
}

↑↑上述代码的if语句中使用了正则判断,但是并没有对匹配结果进行捕获,而是使用了$arg_id直接获取到了相应值,同理其他参数也可以使用$arg_参数名来获取。

演示地址实际跳转了两次,第二次由id跳转到了别名,该效果由插件[改版助手 - Z-Blog 应用中心]实现。。

最后姑且针对全部Z-Blog的动态参数弄了份跳转配置,下载地址戳→WebDir二水水的演示站,文档日期为2020-11-07

所以我是不是弄个关注公众号可见,还是说一步到位弄个API接口插件。。

【换到PHP后一直没上草稿功能,今天第一次翻车。。。。。

【想起来了。。因为这篇文章就是为了记录301调试,浏览器缓存了一开始摸索的效果,然后我就清理了一波。。。

本文标题:《【折腾】Nginx解析网址参数并跳转》作者:沉冰浮水
原文链接:https://www.wdssmq.com/post/20201107566.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类

搜索

控制面板

您好,欢迎到访网站!
  查看权限

最新留言

友情链接

召唤伊斯特瓦尔