,# Apache Rewrite Rules,,RewriteEngine On,RewriteBase /,,# Rewrite all requests to index.php, but only if they don't already point to an existing file or directory,RewriteCond %{REQUEST_FILENAME} !f,RewriteCond %{REQUEST_FILENAME} !d,RewriteRule ^(.*)$ index.php?/$1 [L],,
“,,保存并上传到服务器,然后重启Apache服务。这样,dedecms就实现了全站php伪静态。 在DedeCMS中实现全站PHP伪静态,可以通过以下步骤完成,这些步骤涵盖了Apache和IIS服务器的配置,以及修改PHP源码和后台参数设置。
准备工作
1、确认服务器支持伪静态:确保你的网站空间或服务器支持伪静态,如果是自己的服务器,可以自行配置;如果是虚拟主机,需要联系IDC服务商确认是否支持伪静态。
2、开启DedeCMS伪静态选项:登录DedeCMS后台,依次点击“系统” > “系统基本参数” > “核心设置”,将“是否使用伪静态”设置为“是”。
Apache服务器配置
1、编辑.htaccess文件:在DedeCMS根目录下创建或编辑.htaccess文件,添加以下规则:
代码 | 说明 |
RewriteEngine on | 开启URL重写引擎 |
RewriteBase / | 设置URL重写的基本路径 |
RewriteRule ^(.*)/index.html$ $1/index.php [L] | 首页伪静态规则 |
RewriteRule ^(.*)/list([09]+).html$ $1/plus/list.php?tid=$1 [L] | 列表页伪静态规则 |
RewriteRule ^(.*)/view([09]+)([09]+).html$ $1/plus/view.php?aid=$1&page=$2 [L] | 文章页伪静态规则 |
RewriteRule ^(.*)/tags([^/]+).html$ $1/plus/tags.php?tag=$1 [L] | TAG标签伪静态规则 |
RewriteRule ^(.*)/search([^/]+).html$ $1/plus/search.php?q=$1 [L] | 搜索页伪静态规则 |
2、重启Apache服务:保存.htaccess文件后,重启Apache服务以使更改生效。
IIS服务器配置
1、安装ISAPI_Rewrite模块:对于Windows IIS服务器,需要安装ISAPI_Rewrite模块来支持伪静态。
2、编辑httpd.ini文件:在DedeCMS根目录下找到httpd.ini文件,添加以下规则:
代码 | 说明 |
RewriteRule ^(.*)/index.html$ $1/index.php [I,L] | 首页伪静态规则 |
RewriteRule ^(.*)/list([09]+).html$ $1/plus/list.php?tid=$1 [I,L] | 列表页伪静态规则 |
RewriteRule ^(.*)/view([09]+)([09]+).html$ $1/plus/view.php?aid=$1&page=$2 [I,L] | 文章页伪静态规则 |
RewriteRule ^(.*)/tags([^/]+).html$ $1/plus/tags.php?tag=$1 [I,L] | TAG标签伪静态规则 |
RewriteRule ^(.*)/search([^/]+).html$ $1/plus/search.php?q=$1 [I,L] | 搜索页伪静态规则 |
3、重启IIS服务:保存httpd.ini文件后,重启IIS服务以使更改生效。
修改DedeCMS源码(可选)
如果上述配置无法满足你的需求,还可以手动修改DedeCMS的源码来实现更复杂的伪静态规则,这通常涉及到修改DedeCMS的模板文件和程序文件,具体方法因版本而异。
测试与优化
1、测试伪静态效果:在完成上述配置后,通过访问网站的各个页面来测试伪静态是否生效,检查URL是否符合预期的伪静态格式。
2、优化伪静态规则:根据测试结果对伪静态规则进行微调,以确保所有页面都能正确重写为伪静态URL。
FAQs
1、Q: DedeCMS后台开启了伪静态选项但前台没有生效怎么办?
A: 确保你的服务器已经正确配置了伪静态规则并且支持相应的伪静态组件,尝试清除浏览器缓存并重新访问网站,如果问题依旧存在,请检查服务器日志以获取更多信息。
2、Q: 修改.htaccess或httpd.ini文件后需要立即生效吗?
A: 是的,通常情况下修改这两个文件后需要立即生效,但如果遇到问题可以尝试重启服务器或清除缓存后再试。
3、Q: 如何判断我的服务器是否支持伪静态?
A: 你可以通过联系你的服务器提供商或者查看服务器文档来判断是否支持伪静态功能,另外也可以通过尝试创建一个简单的伪静态规则来测试服务器的反应从而间接判断是否支持该功能。
Dedecms 实现全站 PHP 伪静态
1. 前言
Dedecms 作为一款流行的内容管理系统,默认情况下使用的是动态URL,这不利于搜索引擎优化(SEO)和用户体验,通过实现伪静态,可以将动态URL转换为静态URL,从而提高网站的可读性和搜索引擎排名,以下是在 Dedecms 中实现全站 PHP 伪静态的详细步骤。
2. 准备工作
确保您的 Dedecms 版本支持伪静态。
服务器配置支持 PHP 伪静态,通常需要开启 mod_rewrite 模块。
3. 步骤
3.1 修改 .htaccess 文件
1、找到 Dedecms 根目录下的.htaccess
文件(如果没有,则创建一个)。
2、将以下代码添加到.htaccess
文件中:
Options +FollowSymLinks RewriteEngine On RewriteRule ^$ index.php [L] RewriteRule ^index.php$ index.php [L] RewriteRule ^index.php?s=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&q=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&p=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&t=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+&a1=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+&a1=[azAZ09]+&a2=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+&a1=[azAZ09]+&a2=[azAZ09]+&a3=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+&a1=[azAZ09]+&a2=[azAZ09]+&a3=[azAZ09]+&a4=[azAZ09]+ [L] RewriteRule ^index.php?s=[azAZ09]+&c=[azAZ09]+&a=[azAZ09]+&v=[azAZ09]+&t=[azAZ09]+&cc=[azAZ09]+&a1=[azAZ09]+&a2=[azAZ09]+&a3=[azAZ09]+&a4=[azAZ09]+&a5=[azAZ09]+ [L]
3.2 修改配置文件
1、进入 Dedecms 的后台管理界面。
2、在系统设置中找到 URL重写设置。
3、选择“开启URL重写”并保存设置。
4. 测试伪静态
1、在浏览器中访问您的网站,检查链接是否已经变为伪静态格式。
2、可以通过搜索引擎抓取工具检查网站链接,确保伪静态设置正确。
5. 注意事项
确保您的服务器上安装了 Apache 服务器并开启了 mod_rewrite 模块。
如果使用的是其他类型的 Web 服务器,如 Nginx,则需要按照相应服务器的配置方法进行伪静态设置。
在进行伪静态设置之前,请做好数据备份,以防万一出现问题时可以恢复。
6. 结束语
通过以上步骤,您可以在 Dedecms 中实现全站 PHP 伪静态,从而提高网站的 SEO 和用户体验,在操作过程中,请仔细阅读相关文档,确保每一步的正确性。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。