联系官方销售客服

1835022288

028-61286886

开发框架 版主:迅睿框架研发组
伪静态 详情的url工作不正常,提示404内容不存在
类型:迅睿CMS 更新时间:2022-06-01 12:16:54


最近在处理一个织梦转迅睿的活儿,遇到了一个自定义字段做伪静态的问题

织梦的产品列表和详情的url是这样的

http://www.domain.com/PRODUCTS/Level-One-Column/Level-Two-Column/

http://www.domain.com/PRODUCTS/Level-One-Column/Level-Two-Column/The-Product-One.html

这里就是使用的自定义字段存放的自定义url名称

这种类型的url在迅睿的伪静态规则里实现的过程中遇到了问题

分类的url工作正常,但详情的url工作不正常,要么提示404内容不存在,要么提示找不到页面

url规则的设置如下

image

rewrite.php的配置如下

image

diyurl是产品模块自定义字段 用来存放自定义url内容的(之前转换过来的时候默认是myurl,似乎是和系统的某个变量冲突了)

反复测试了很多次,详情就是不能这个正常访问。


遂求助。

回帖
  • 迅睿框架技术-陈老师
    #1楼    迅睿框架技术-陈老师
    2022-06-01 05:37:05
    iPhone手机 0
    访问提示404,这种100%的是解析规则设置的一个问题。也要搞清楚内容URL的结构前面哪部分是栏目,哪部分是字段的值?这个搞清楚了,就很好写规则了。
  • Along
    #2楼    Along
    2022-06-01 09:50:50
    Chrome 0
    恕我愚钝,这文档看过了,但似乎帮不上什么忙,昨天在群里找人帮忙看,都没搞定,我现在是要解决问题,具体要怎么做?
  • 迅睿框架技术-陈老师
    #3楼    迅睿框架技术-陈老师
    2022-06-01 09:51:56
    Chrome 0
    你没有回答我的问题:内容URL的结构前面哪部分是栏目,哪部分是字段的值
  • Along
    #4楼    Along
    2022-06-01 09:57:45
    Chrome 0
    迅睿框架技术-陈老师 /PRODUCTS/Level-One-Column/Level-Two-Column/The-Product-One.html /PRODUCTS/ 产品大栏目 Level-One-Column/ 一级分类 Level-Two-Column/二级分类 The-Product-One.html 自定义URL 也就是diyurl字段 填入的值 先在url字段 可以生成正确的url
  • 迅睿框架技术-陈老师
    #5楼    迅睿框架技术-陈老师
    2022-06-01 09:59:12
    Chrome 0
    这样就清晰了,然后把图片代码复制出来,我小改小改即可
    image
    以后像这种代码就不要截图了,因为图片里面的字母不方便二次修改内容,别人看到这种截图就算知道该怎么去修改,人家也懒得打字,复制多好
  • Along
    #6楼    Along
    2022-06-01 10:03:12
    Chrome 0
    return [    
        /***********************下面写你自己的URL解析规则********************/
        /***********************共享栏目测试规则:栏目列表页面分页的伪静态解析*************************/
        "([\w\\/]+)\/list-([0-9]+)-([0-9]+)\.html" => "index.php?c=category&dir=$1&page=$3",
        /***********************共享栏目测试规则:栏目列表页面的伪静态解析*************************/
        "([\w\\/]+)" => "index.php?c=category&dir=$1",
        /***********************共享栏目测试规则:内容页面的伪静态解析*************************/
        "([\w\\/]+)\.html"  => "index.php?s=shop&c=show&field=diyurl&value=$1",
        /***********************共享栏目测试规则:内容页面分页的伪静态解析*************************/
    ];
  • 迅睿框架技术-陈老师
    #7楼    迅睿框架技术-陈老师
    2022-06-01 10:05:50
    Chrome 0
    这种规则匹配需要保障diyurl字段值是唯一的
     "([\w\\/]+)\/([a-zA-Z\-])\.html"  => "index.php?s=shop&c=show&field=diyurl&value=$2",
  • luis
    #8楼    luis
    2022-06-01 10:12:53
    Chrome 0
    迅睿框架技术-陈老师
    %$8}XF80_XEC)GT}VKFV}$X
  • Along
    #9楼    Along
    2022-06-01 10:25:02
    Chrome 0
    迅睿框架技术-陈老师 试过了,问题依旧。而且出现了新问题
    /index.php?c=category&dir=PRODUCTS/Level-One-Column/ 这样访问是可以的/PRODUCTS/Level-One-Column/ 这样就404了/PRODUCTS/一级是可以访问的详情页依旧是404
  • 迅睿框架技术-陈老师
    #10楼    迅睿框架技术-陈老师
    2022-06-01 10:37:05
    Chrome 0
    只保留这一个
     "([\w\-\/]+)\/([a-zA-Z\-])\.html"  => "index.php?s=shop&c=show&field=diyurl&value=$2",
    伪静态解析规则调试方法


  • Along
    #11楼    Along
    2022-06-01 10:39:31
    Chrome 0
    迅睿框架技术-陈老师 就是diyurl里有.html 那规则里用的{pdirname}/{diyurl}这里是不是就要去掉.html了?
     "([\w\\/]+)\/([a-zA-Z\-])"  => "index.php?s=shop&c=show&field=diyurl&value=$2",
    然后这条规则 似乎和 二级三级目录的冲突
  • 迅睿框架技术-陈老师
    #12楼    迅睿框架技术-陈老师
    2022-06-01 10:41:48
    Chrome 0
    ([a-zA-Z\-])等于你数据库存储的diyurl值,你看我前面还让你提供过diyurl的值,如果它值带了html就不写html了
    信息提供一ding要完整,多研究
  • Along
    #13楼    Along
    2022-06-01 10:47:23
    Chrome 0
    迅睿框架技术-陈老师 只留一条,内容依旧404,连分类都404了。
  • 小波工作室--标签和API大师
    #14楼    小波工作室--标签和API大师
    2022-06-01 11:06:21
    Chrome 0
    这个需要远程调试,要根据你后台录入的值格式来写解析规则
    满意答案
  • Along
    #15楼    Along
    2022-06-01 11:12:32
    Chrome 0
    小波工作室--标签和API大师 现在的规则就是,分类名 除了一级是固定的products 然后往下 的名字 就是英文单词组合 用减号连起来的,有的有数字。 内容名字也一样。没有中文,都是英文,有大小写。目前能想到的,就是详情URL和分类URL解析上应该是有冲突。因为都是用/串起来的字符串。而且一条规则如果有级别 那级别不一样的也没办法直接访问 还是404.
  • Nevergiveu
    #16楼    Nevergiveu
    2022-06-01 11:26:46
    Chrome 0
    小波出马必胜,我找他写过好几种伪静态了,很专业
  • Along
    #17楼    Along
    2022-06-01 12:16:54
    Chrome 0
    @小波工作室--标签和API大师:远程解决了,多谢,以后还会光顾