首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nginx 伪静态

nginx 伪静态

作者头像
北国风光
发布2019-04-11 15:18:19
4.8K0
发布2019-04-11 15:18:19
举报
文章被收录于专栏:PHPer 进击PHPer 进击

最近有个在官网加【行业资讯】的需求。考虑到主要目的是为了推广,决定对资讯的栏目和内容页进行伪静态处理。

下面以文章 id 为 5 的文章页为例。原始地址为:

oriUrl = http://blog.muzixizao.com/?p=5

其实所谓的伪静态,就是去除地址里的动态参数,比如 ?、= 等,以便更适应搜索引擎优化搜索,当然,也可以美化我们的 url。

现在,我们可以将上述链接的伪静态地址定为:

staticUrl = http://blog.muzixizao.com/p/5.html

也就是说,当我们在地址栏中输入 staticUrl 时,需要服务器匹配到 oriUrl 匹配的路由。这个对于 nginx 而言,一个正则匹配就够了。

location / {
    rewrite ^/p/(\d+).html$ /?p=$1; 将 /p/140.html 重写成 /?p=140
}

对于 nginx 的路由匹配不太明白的,可以参考 Nginx location匹配规则

如果有较多的匹配规则,可以将伪静态的路由重写抽离成一个单独的文件,在对应域名下引入重写文件即可。

# rewrite.conf
location / {
    rewrite ^/p/(\d+).html$ /?p=$1; 将 /p/140.html 重写成 /?p=140
}
# nginx.conf
location / {
    include rewrite.conf
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-10-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档