开发者社区> 问答> 正文

nginx的rewrite写法? 400 报错

nginx的rewrite写法? 400 报错

请求的url如下

/item/12345/index.html

重定向到/item/12/12345/index.html

规则就是id除1000,如果小于id小于1000,则为/item/0/id/index.html

不知道说清楚没有,这个rewrite规则该怎么写啊???

展开
收起
爱吃鱼的程序员 2020-06-03 16:36:52 442 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    这个不是 nginx 干的事吧

    ######

    引用来自#2楼“红薯”的帖子

    这个不是 nginx 干的事吧

    红薯哥能说的细点吗?由于文件存储结构变化,以前老的url还要维护外链的可用性,所以要重新定向到新的url格式上,不这么处理还有别的更好的办法吗?

    ######

    这个。。。不懂。。。飘过~

    ######

    刚看了文档,似乎可以

    http://wiki.nginx.org/HttpRewriteModule

    /photos/123456  -> /path/to/photos/12/1234/123456.png

    rewrite  "/photos/([0-9] {2})([0-9] {2})([0-9] {2})" /path/to/photos/$1/$1$2/$1$2$3.png;
    ######

    引用来自#5楼“红薯”的帖子

    刚看了文档,似乎可以

    http://wiki.nginx.org/HttpRewriteModule

    /photos/123456  -> /path/to/photos/12/1234/123456.png

    rewrite  "/photos/([0-9] {2})([0-9] {2})([0-9] {2})" /path/to/photos/$1/$1$2/$1$2$3.png;

    一会试试,如果不成貌似就得开发模块来处理了吧

    ######

    地址重定向应该是写.htaccess吧

    ######

    rewrite /item/([0-9]{3})/(.*)$ /item/0/$1/$2;

    rewrite /item/([0-9]{2})([0-9]*)/(.*)$ /item/$1/$1$2/$3;

    没测试

    2020-06-03 20:50:23
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《Nginx 代理系统常用手册》 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载