.htaccess
文件中添加相应的规则。,,对于Linux主机,可以使用Apache服务器,需要在.htaccess
文件中添加以下内容:,,“,RewriteEngine on,RewriteCond %{REQUEST_FILENAME} !d,RewriteCond %{REQUEST_FILENAME} !f,RewriteRule ^(.*)$ /index.php?/$1 [L,QSA],
`,,对于Windows主机,可以使用IIS服务器,需要在
web.config文件中添加以下内容:,,
`xml,,,,,,,,,,,,,,,,,
“在Linux和Windows主机上实现DedeCMS伪静态的方法虽然有一些不同,但总体思路是一致的,以下是详细步骤和注意事项:
1、确保服务器支持URL重写:
确认你的Apache服务器已经启用了mod_rewrite
模块,可以通过执行phpinfo()
查看是否有mod_rewrite
项。
2、开启DedeCMS后台的伪静态功能:
登录DedeCMS后台,进入“系统设置”“核心参数配置”,找到“是否使用伪静态”选项,将其设置为“是”。
3、修改PHP文件:
打开/include/channelunit.func.php
文件,将以下代码:
return $GLOBALS["cfg_plus_dir"]."/view".$aid.'1.html';
修改为:
return "/view".$aid.'1.html';
同样,将以下代码:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
修改为:
$reurl = "/list".$typeid.".html";
4、添加.htaccess文件:
在网站根目录下创建一个名为.htaccess
的文件,并添加以下内容:
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !f RewriteCond %{REQUEST_FILENAME} !d RewriteRule ^(.*)/index.html$ /index.php [L] RewriteRule ^(.*)/plus/list([09]+).html$ /plus/list.php?tid=$1 [L] RewriteRule ^(.*)/plus/view([09]+)([09]+).html$ /plus/view.php?aid=$1&pageno=$2 [L] RewriteRule ^(.*)/plus/list([09]+)([09]+)([09]+).html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 [L]
Windows主机实现DedeCMS伪静态
1、确保服务器支持URL重写:
确认你的IIS服务器已经安装了ISAPI_Rewrite模块。
2、开启DedeCMS后台的伪静态功能:
登录DedeCMS后台,进入“系统设置”“核心参数配置”,找到“是否使用伪静态”选项,将其设置为“是”。
3、修改PHP文件:
打开/include/channelunit.func.php
文件,将以下代码:
return $GLOBALS["cfg_plus_dir"]."/view".$aid.'1.html';
修改为:
return "/view".$aid.'1.html';
同样,将以下代码:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
修改为:
$reurl = "/list".$typeid.".html";
4、添加httpd.ini文件:
在网站根目录下创建一个名为httpd.ini
的文件,并添加以下内容:
[ISAPI_Rewrite] # 缓存3600秒 = 1 小时(hour) CacheClockRate 3600 RepeatLimit 32 RewriteRule ^(.*)/index.html $1/index.php RewriteRule ^(.*)/plus/list([09]+).html $1/plus/list.php?tid=$2 RewriteRule ^(.*)/plus/list([09]+)([09]+)([09]+).html $1/plus/list.php?tid=$2&TotalResult=$3&PageNo=$4 RewriteRule ^(.*)/plus/view([09]+)([09]+).html $1/plus/view.php?aid=$2&pageno=$3
相关FAQs
问题1:如何在不修改PHP文件的情况下实现DedeCMS伪静态?
答:如果不希望修改PHP文件,可以在后台设置中选择动态浏览,并在栏目设置中使用动态页,这样,URL地址会稍长一些,但也能实现伪静态效果,具体操作如下:
登录DedeCMS后台,进入“系统设置”“核心参数配置”,找到“是否使用伪静态”选项,将其设置为“否”。
在创建栏目或批量增加栏目时,栏目列表选项选择“使用动态页”。
在添加新文章时,发布选项选择“仅动态浏览”。
问题2:如何确认服务器是否支持URL重写?
答:确认服务器是否支持URL重写的方法如下:
对于Apache服务器:可以通过执行phpinfo()
函数,查看是否有mod_rewrite
项,如果有,则表示支持URL重写。
对于IIS服务器:需要确认是否安装了ISAPI_Rewrite模块,如果没有安装,可以从网上下载并安装该模块。
平台 | 步骤 | 说明 |
Linux | 1. 修改Apache配置文件(.htaccess) | 将以下代码添加到根目录下的 .htaccess 文件中:RewriteEngine On |
2. 重启Apache服务 | 使用命令service httpd restart 或apachectl restart 重启Apache服务。 | |
3. 检查伪静态是否生效 | 访问带有ID的列表页,如http://example.com/list_1.html ,应自动跳转到http://example.com/list.php?id=1 。 | |
Windows | 1. 修改IIS网站配置 | 在IIS管理器中找到相应的网站,双击打开“属性”窗口。 |
2. 切换到“ISAPI和CGI限制”选项卡 | 确保“启用CGI”和“启用ISAPI”复选框被勾选。 | |
3. 切换到“主目录”选项卡 | 点击“配置”按钮,选择“ISAPI扩展”或“CGI”,然后点击“添加”。 | |
4. 添加mod_rewrite.dll扩展 | 在弹出的对话框中,选择“mod_rewrite.dll”扩展,然后点击“确定”。 | |
5. 重启IIS服务 | 使用命令iisreset 重启IIS服务。 | |
6. 检查伪静态是否生效 | 访问带有ID的列表页,如http://example.com/list_1.html ,应自动跳转到http://example.com/list.php?id=1 。 |
步骤可能因您的具体环境和DedeCMS版本而有所不同,在实施之前,请确保备份相关配置文件,以防万一出现问题。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1207943.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复