,# dedecms伪静态规则,, RewriteEngine On, RewriteBase /, RewriteCond %{REQUEST_FILENAME} !d, RewriteCond %{REQUEST_FILENAME} !f, RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L],,
“,,将以上代码添加到网站根目录的.htaccess文件中,然后保存即可。Dedecms织梦全站伪静态规则
前提条件
1、服务器支持URL重写:确保你的服务器(无论是Apache还是IIS)支持URL重写,对于Apache服务器,通常需要在.htaccess文件中添加相应规则;对于IIS服务器,则需要加载Rewrite组件并配置httpd.ini文件。
2、后台设置:进入DedeCms后台,依次点击“系统”“系统基本参数”“核心设置”,将“是否使用伪静态”选项设置为“是”。
3、栏目和文档设置:在DedeCms后台,将所有栏目设置为“使用动态页”,所有文档设置为“仅动态浏览”,可以通过SQL命令行工具快速执行以下语句:
update dede_arctype set isdefault=1; update dede_archives set ismake=1;
修改PHP文件
1、include/channelunit.func.php:
查找以下代码:
return $GLOBALS["cfg_plus_dir"]."/view".$aid.'1.html';
将其修改为:
return "/view".$aid.'1.html';
查找以下代码:
return $GLOBALS['cfg_phpurl']."/view.php?aid=$aid";
将其修改为:
return "/view.php?aid=$aid";
查找以下代码:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
将其修改为:
$reurl = "/list".$typeid.".html";
2、include/arc.listview.class.php:
找到获取动态分页列表的函数GetPageListDM(),将以下代码:
$plist = str_replace('.php?tid=', '', $plist);
替换为:
$plist = str_replace('plus', 'list', $plist);
编写重写规则
1、IIS服务器:在httpd.ini文件中添加以下规则:
[ISAPI_Rewrite] # 缓存3600秒 = 1小时(hour) CacheClockRate 3600 RepeatLimit 32 # dedecms Rewrite规则 RewriteRule ^(.*)/index.html$1/index.php [L] RewriteRule ^(.*)/list([09]+).html$1/plus/list.php?tid=$2 [L] RewriteRule ^(.*)/list([09]+)([09]+)([09]+).html$1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4 [L] RewriteRule ^(.*)/view([09]+)([09]+).html$1/plus/view.php?arcID=$2&pageno=$3 [L]
2、Apache服务器:在.htaccess文件中添加以下规则:
RewriteEngine on RewriteRule ^(.*)/index.html$1/index.php [L] RewriteRule ^(.*)/list([09]+).html$1/plus/list.php?tid=$2 [L] RewriteRule ^(.*)/list([09]+)([09]+)([09]+).html$1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4 [L] RewriteRule ^(.*)/view([09]+)([09]+).html$1/plus/view.php?arcID=$2&pageno=$3 [L]
FAQs
1、如何确保网站不陷入死循环?
答:如果不使用动态首页,请删除或修改httpd.ini或.htaccess中的以下规则:
RewriteRule ^(.*)/index.html$1/index.php [L]
或者改为:
RewriteRule ^(.*)/index.html$1/index.html [L]
2、如何修改文章分页的URL格式?
答:如果需要更改文章分页的URL格式,可以在include/arc.archives.class.php文件中的GetPagebreakDM()函数末尾进行修改。
$PageList = str_replace(".php?aid=","",$PageList);
可以将其修改为:
$PageList = str_replace(".php?aid=","",$PageList);
规则名称 | 规则内容 | 作用说明 |
1. 内容页 | index.php?m=content&c=index&a=show&catid={cat_id}&id={id} | 将内容页地址转换为伪静态格式,{cat_id} 为分类ID,{id} ID |
2. 分类页 | index.php?m=content&c=index&a=lists&catid={cat_id} | 将分类页地址转换为伪静态格式,{cat_id} 为分类ID |
3. 首页 | index.php | 将首页地址转换为伪静态格式 |
4. 标签页 | index.php?m=content&c=index&a=tags&catid={cat_id} | 将标签页地址转换为伪静态格式,{cat_id} 为分类ID |
5. 联系我们 | index.php?m=content&c=index&a=show&catid={cat_id}&id={id} | 将联系我们页面地址转换为伪静态格式,{cat_id} 为分类ID,{id} ID |
6. 关于我们 | index.php?m=content&c=index&a=show&catid={cat_id}&id={id} | 将关于我们页面地址转换为伪静态格式,{cat_id} 为分类ID,{id} ID |
7. 新闻动态 | index.php?m=content&c=index&a=lists&catid={cat_id} | 将新闻动态页面地址转换为伪静态格式,{cat_id} 为分类ID |
在DedeCMS后台,您需要按照以下步骤进行伪静态规则设置:
1、登录DedeCMS后台管理。
2、点击“系统”菜单,选择“系统设置”。
3、在“系统设置”页面,找到“URL设置”选项卡。
4、在“URL设置”选项卡中,勾选“开启伪静态”。
5、根据上述表格中的规则内容,修改“URL规则”选项中的内容。
6、点击“保存”按钮,保存伪静态规则设置。
在修改伪静态规则时,请确保您已经备份了网站数据,以防止出现意外情况。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1217382.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复