12下一页
返回列表 发帖
查看: 109|回复: 12

[求助] 伪静态规则写法的问题,保存不了

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
发表于 3 天前 | 查看全部 |阅读模式
之前关于帖子:



关于SEO伪静态,帖子内容页默认的规则是不是不太好
https://www.dismall.com/thread-27038-1-1.html


  1. thread-{tid}-{page}-{prevpage}.html
复制代码
想把这个改成:
  1. thread-{tid}-{page}.html
复制代码
或者:
  1. thread-{tid}-{page}-{1}.html
复制代码


遇到2个问题,在测试站,改掉之后,保存,伪静态规则也变了,但是重新打开SEO设置,又变成默认了。直接改正式站
  1. thread-{tid}-{page}.html
复制代码
然后在宝塔里边改伪静态规则,会提示保存失败,好像是“{}”的问题
  1. rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D{prevpage}&page=$3 last;
复制代码
有人说要用引号
  1. rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)\.html$ "$1/forum.php?mod=viewthread&tid=$2&extra=page%3D{prevpage}&page=$3" last;
复制代码
结果就是内容页直接打不开了404了

想求助一下,我要实现
  1. thread-{tid}-{page}.html
复制代码
或者(这里我不知道这么写对不对):
  1. thread-{tid}-{page}-{1}.html
复制代码
伪静态规则到底要怎么写,才是正确的

我知道答案 回答被采纳将会获得1 贡献 已有12人回答
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 昨天 00:50 | 查看全部
针对2楼,我补充一下。
现在网站又莫名其妙的好了,没有出现列表页几页,帖子静态链接不同的问题了。后台的伪静态规则设置那里也变成了:
  1. thread-{tid}-{page}.html
复制代码

之前这里的问题是我修改伪静态:
改成:
  1. thread-{tid}-{page}.html
复制代码

或者:
  1. thread-{tid}-{page}-{1}.html
复制代码

或者:
  1. thread-{tid}-{page}-1.html
复制代码

点击保存之后,刷新就会变回默认的:
  1. thread-{tid}-{page}-{prevpage}.html
复制代码

这个可能是我网站的问题吧
但是前面说的问题依旧,【查看当前的 Rewrite 规则】
Nginx Web Server,还是:
  1. rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D{prevpage}&page=$3 last;
复制代码

这个规则在宝塔里无法保存

我现在实际使用的是:
  1. rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&page=$3 last;
复制代码
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 3 天前 | 查看全部
在测试站,不管SEO里边的设置(有点错乱,保存之后会还原),直接在宝塔伪静态里改成:
  1. rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&page=$3 last;
复制代码

不知道是不是我的测试站的缓存有问题。同一个板块,不同的页面,出现了错乱,
第一页,第二页的链接都是
  1. thread-{tid}-{page}-{prevpage}.html
复制代码

【第一页的帖子thread-150-1-1.html可以打开,打开板块第二页帖子地址thread-100-1-2.html会提示:插件不存在或已关闭。但是如果直接使用thread-100-1-1.html或者thread-100-1.html就可以访问】
第三页就是:
  1. thread-{tid}-{page}.html
复制代码

可以正常打开。测试站的问题可以忽略,就是想知道最正确的写法是什么


回复

使用道具 举报

14

主题

3451

回帖

5869

积分

应用开发者

贡献
408 点
金币
170 个
QQ
发表于 前天 07:18 | 查看全部
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-1\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page\%3D{prevpage}&page=$3&%1


你这样改 试试
回复

使用道具 举报

31

主题

5955

回帖

1万

积分

应用开发者

贡献
623 点
金币
1444 个
QQ
发表于 前天 08:32 | 查看全部
规则里面你写{prevpage}干啥?这个是DZ的变量替代法,在规则后面的正则匹配里不能用啊
回复

使用道具 举报

4

主题

14

回帖

24

积分

初学乍练

贡献
0 点
金币
5 个
QQ
发表于 前天 13:44 来自手机 | 查看全部
我网站,插进开不了伪静态,不晓得怎么弄,有人有现成的么?给我一个
回复

使用道具 举报

41

主题

3209

回帖

5467

积分

应用开发者

Discuz! 运维

贡献
215 点
金币
685 个
QQ
发表于 前天 14:14 | 查看全部
山鸡 发表于 2025-10-9 13:44
我网站,插进开不了伪静态,不晓得怎么弄,有人有现成的么?给我一个

后台直接开启复制规则
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 昨天 00:27 | 查看全部
湖中沉 发表于 2025-10-9 08:32
规则里面你写{prevpage}干啥?这个是DZ的变量替代法,在规则后面的正则匹配里不能用啊 ...

有没有一种可能,这个是我设置伪静态之后,到规则哪里复制的,我也绝对奇怪。
难道是我的网站出问题了,生成的伪静态有问题?
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 昨天 00:27 | 查看全部
科站网 发表于 2025-10-9 14:14
后台直接开启复制规则

那就是我复制的
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 昨天 00:37 | 查看全部

我的是Nginx哟
回复

使用道具 举报

14

主题

536

回帖

741

积分

自成一派

贡献
29 点
金币
29 个
 楼主| 发表于 昨天 00:40 | 查看全部
山鸡 发表于 2025-10-9 13:44
我网站,插进开不了伪静态,不晓得怎么弄,有人有现成的么?给我一个

给你参考一个写法,注意,这个只是可以用静态地址可以打开页面,并不能把页面上的动态地址伪静态
  1. rewrite ^([^\.]*)/collection/$ $1/forum.php?mod=collection last;
  2. rewrite ^([^\.]*)/collection$ $1/forum.php?mod=collection last;
  3. rewrite ^([^\.]*)/collection/view-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=collection&action=view&ctid=$2&page=$3 last;
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2025-10-11 06:09 , Processed in 0.070159 second(s), 11 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Copyright © 2001-2025 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表