业务经理

微信扫描以上二维码

028-61286886

技术咨询

伪静态 详情的url工作不正常,提示404内容不存在

迅睿框架 更新 2022-06-01 12:16:54 Along


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

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


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

迅睿系统漏洞

站群分站系统
站群分站系统(2026-10-15)
子站域名新增llms.txt访问
GEO系统
GEO系统(2026-10-14)
修复下载zip空白地址问题 修复流量复刻和任务队列错误
GeoSeo收录宝
GeoSeo收录宝(2026-10-14)
新增 站长工具箱 前端首页自动调用meta 数据
滑块验证码 Gocaptcha
滑块验证码 Gocaptcha(2026-10-13)
基于开源项目 go-captcha 的行为验证码插件,滑动拼图、区域...
GeoSeo工具箱
GeoSeo工具箱(2026-10-13)
优化巡检任务
GeoSeo排名助手
GeoSeo排名助手(2026-10-11)
加入大模型自定义
SEO聚合关键字
SEO聚合关键字(2026-10-11)
优化关键字列表页最多支持1万篇文章,过多会导致服务器扛不住;
CMS内容同步复制
CMS内容同步复制(2026-10-10)
增加时间是否更新的开关