腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

[织梦] 【教程】织梦Dedecms系统5.7手机版伪静态方法

0
回复
1251
查看
[复制链接]

1

主题

7

帖子

25

积分

1°伸手党

Rank: 2

积分
25
发表于 19-4-18 20:18:50 | 显示全部楼层 |阅读模式         
     最近才开始接触dede织梦系统,发现织梦系统很强大,但是很多功能在实现的时候会涉及到修改代码,这对于我们这种代码小白来说不是什么好事。 7 J& l' ~) n" W! b7 ~
我在dedeCMS在静态化的时候遇到了一些问题,如果全站都用纯静态,前期文章较少的时候还可以,但是在建站后期数据在百万级别的时候,更改一行代码,就要重新生成百万级别的数据,这对服务器有一定的挑战,而且还会占据较大的网页空间。如果使用伪静态,目前网上伪静态的教程很多,但都是讲电脑版如何伪静态,没有织梦系统手机版伪静态的教程,今天我就详细讲一下dedeCMS手机版如何伪静态! l; m4 \$ L! c2 e7 F
织梦手机伪静态主要涉及到两个方面,一个是模板修改,另一个是dede织梦伪静态规则,在设置手机伪静态之前,需要先设置好电脑版的伪静态,因为手机伪静态需要打开“启用伪静态”开关。 " K* _4 d/ N" }% }' S
一、首先在后台开启全站伪静态
) k" _" w3 D$ Y8 {' J3 Y! Q e2cc71a9jw1f9qj9a8cv8j20dg06zt9l.jpg * c1 m' C0 B9 G2 e0 L& g$ f; F

: X( @! B3 I$ u, W3 q1 C0 Y$ L 然后执行以下sql命令,把已发布的文章和栏目设置为动态) h* U" H! n! Y7 z8 n$ i
update dede_archives set ismake=-1 update dede_arctype set isdefault=-1
* x/ K9 ]; p" K" ?9 E6 }- U 二、手机模板修改
4 o& N# z( s: C! y: x5 R% a3 x 此方法只适用于手机和电脑两套模板的站点,自适应站还没测试,修改前请先备份。 / k# w! l: c3 Q
打开你的手机模板的任意文件,你会发现有很多如下图所示的代码: 7 C' Z- \4 B" d3 ~7 S4 J0 q) H  J6 p
e2cc71a9jw1f9qjjkdwmzj20cv052t9n.jpg : a1 g) R  c3 v  A/ s) n5 v+ i1 d
* z- E- [  W1 Z8 A
  1. <a href="view.php?aid=[field:id/]">
复制代码
这个链接就是链接到动态页面的url,只要把这个链接改成静态,然后写好Rewrite规则即可。上面这个是链接到文章页的,可以改成如下:  }5 v% s9 X5 ~0 d& v, U
  1. <a href="view-[field:id/]-1.html">
复制代码
这里要注意一下,如果你没有改分页代码,这里的静态url只能写成这样,如果写成别的或者是个性化的,在文章和列表分页的时候就会出错。
6 |! W" M- f: c& K* P& ] 原来的栏目url:
, o5 f' ?* W" D6 P" K( s& U( H
  1. <a href="list.php?tid=[field:id/]">
复制代码
可以改成:
. j( ~& ?! v7 M" f! X9 c- ~7 N1 N
  1. <a href="list-[field:id/].html" >
复制代码
要改的就这两个地方,把模板中所有的都改过了,你就大功告成了。其实也没有多少,只有首页、列表页和文章页。
& {* }5 |9 W! a+ k" X% ` 改过来之后再访问一下,是不是可以实现手机版静态了?当然不可能,你还没有写RewriteRule。 ' R7 ?* R8 l1 B: P$ x
三、RewriteRule规则
; l: i% w( v7 \8 f% Y' ~1 M1 Y 手机版的RewriteRule是在电脑版的基础上修改的,我的RewriteRule是这样写的:* o. O8 j" u+ k8 h$ a  F
#手机版列表分页
  1. RewriteRule ^m/list-([0-9]+)-([0-9]+)-([0-9]+).html[        DISCUZ_CODE_30        ]nbsp;/m/list.php?tid=$1&totalresult=$2&PageNo=$3
复制代码
#手机版列表
  1. RewriteRule ^m/list-([0-9]+).html[        DISCUZ_CODE_31        ]nbsp;/m/list.php?tid=$1 #手机版文章分页 RewriteRule ^m/view-([0-9]+)-([0-9]+).html[        DISCUZ_CODE_31        ]nbsp;/m/view.php?aid=$1&pageno=$2
复制代码
#手机版文章页
  1. RewriteRule ^m/view-([0-9]+).html[        DISCUZ_CODE_32        ]nbsp;/m/view.php?aid=$1
复制代码
这是Apache的规则,IIS请自行转换。 9 {9 {6 @  h$ q; O6 Z5 F
这里m是手机版的目录,如果你的手机版在其他目录或者是二级域名,记得改一下。
6 _- [2 w( A# R& q; Z 静态url和RewriteRule是相对应的,如果你没有改分页文件,最好就是按照上面的方法改,有能力的同学可以个性化URL,记得把你的方法分享给大家。
2 C# P* b9 r# Q4 q) B) N 教程到这里就结束了,有问题的同学可以在下面留言问我
# ?1 J8 y  Y7 j, S
% d% G+ c3 L' ]
1 X8 {5 q) T+ L) ?$ {# h2 o# n
( K+ a9 n/ N4 z! ^8 B
" f2 F8 ~6 f  x; }3 s& k( U                                                    
网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除