微信论坛

标题: Discuz!X3.1标签伪静态修改和伪静态规则或者提示插件不存在或已关闭 [打印本页]

作者: 飞多多小程序    时间: 2020-12-11 14:57
标题: Discuz!X3.1标签伪静态修改和伪静态规则或者提示插件不存在或已关闭

Discuz!X3.1标签伪静态修改和伪静态规则或者提示插件不存在或已关闭


如题,按照网上的教程,捣鼓完以后,刷新标签页,发现报错"插件不存在或已关闭",折腾半天也没结果,最后发现是伪静态的顺序写反了,大家引以为戒。

编写本篇的原因是网上较多描述不清楚的教程,使用了后发现各种问题。对于我们这种菜鸟级的,教程需要思路清晰,表述清楚!下边是根据网上整理过来的,修改不正确的地方!亲测可用了。
教程开始

(一)、伪静态规则添加
【这个有点不按套路,因为我Windows服务器也可以用Linux服务器的伪静态代码】

  1. RewriteRule ^(.*)/tag-(.+)\.html*$ $1/misc.php\?mod=tag&id=$2
  2. RewriteRule ^(.*)/tag\.html*$ $1/misc.php\?mod=tag
复制代码
  1. RewriteCond %{QUERY_STRING} ^(.*)$
  2. RewriteRule ^tag-(.+)\.html$ misc.php?mod=tag&id=$1
  3. RewriteCond %{QUERY_STRING} ^(.*)
  4. $RewriteRule ^tag\.html$ misc.php?mod=tag
复制代码
这些代码添加到哪里呢?往下看


添加方法:
在原伪静态文件的最后两行之前添加。我的最后两行规则为

  1. RewriteCond %{QUERY_STRING} ^(.*)$
  2. RewriteRule ^([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ plugin.php?id=$1:$2&%1
复制代码

一些朋友可能为:
  1. RewriteRule ^(.*)/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html(\?(.*))*$ $1/plugin\.php\?id=$2:$3&$5
复制代码

看系统而定。  如果不添加在上边的规则之前,会提示“插件不存在或已关闭”!!!
Discuz!X3.1标签伪静态修改和伪静态规则或者提示插件不存在或已关闭
来看截图

Discuz!X3.1标签伪静态修改和伪静态规则或者提示插件不存在或已关闭


(二)、修改帖子内标签链接(修改系统文件建议备份,养成好习惯)
X3.1后是 template/default(模板目录)/forum/viewthread_node_body.htm下载到本地打开
查找:
  1. <a title="$var[1]" href="misc.php?mod=tag&id=$var[0]" target="_blank">$var[1]</a>
复制代码
替换为:
  1. <a title="$var[1]" href="tag-$var[0].html" target="_blank">$var[1]</a>
复制代码

(三)、修改标签页(tag.htm)标签链接
文件在template/default/tag/tag.htm
查找:
  1. <a href="misc.php?mod=tag&id=$tag[tagid]" title="$tag[tagname]" target="_blank" class="xi2">$tag[tagname]</a>
复制代码
替换为:
  1. <a href="tag-$tag[tagid].html" title="$tag[tagname]" target="_blank" class="xi2">$tag[tagname]</a>
复制代码

(四)、修改标签列表页导航链接tagitem.htm
文件在template/default/tag/tagitem.htm
查找1:
  1. <a href="misc.php?mod=tag">{lang tag}</a>
复制代码
替换为:
  1. <a href="tag.html">{lang tag}</a>
复制代码

查找2:
  1. <a href="misc.php?mod=tag&id=$id">$tagname</a>
复制代码
替换为:
  1. <a href="tag-$id.html">$tagname</a>
复制代码

(五)、最后修改robort.txt让蜘蛛爬行标签页。
  • 删除或注释掉根目录下misc.php的这段代码
    1. $discuz->reject_robot();
    复制代码

  • robots.txt文件删除一下两条禁止蜘蛛抓去的规则:

  1. Disallow: /misc.phpDisallow: /*?mod=misc*
复制代码

上传替换,完成修改!这时候就完成了标签伪静态了。









欢迎光临 微信论坛 (http://bbs.weixinrj.com/) Powered by Discuz! X3.1