dede后台如何开启伪静态?

99ANYc3cd6
预计阅读时长 20 分钟
位置: 首页 DEDE建站 正文
  1. 网站服务器配置:让服务器知道如何将美观的URL地址“翻译”成真实的PHP脚本地址,这是最关键的一步。
  2. DedeCMS后台设置:告诉DedeCMS系统,生成链接时使用伪静态的格式。

下面我将为你详细讲解这两个步骤,并提供不同服务器环境下的具体配置方法。

dede后台开启伪静态
(图片来源网络,侵删)

第一步:网站服务器配置 (核心步骤)

在修改DedeCMS后台设置之前,必须确保你的服务器已经支持并配置好了伪静态规则,否则,所有设置都是徒劳,访问伪静态链接会直接导致404错误。

请根据你的服务器环境,选择对应的配置方法:

Apache 服务器 (.htaccess)

这是最常见的情况,绝大多数虚拟主机都使用Apache。

  • 检查并开启 mod_rewrite 模块: 大多数虚拟主机商已经默认开启了这个模块,你可以通过创建一个 phpinfo.php 文件,内容为 <?php phpinfo(); ?>,然后在浏览器中访问,查找 Loaded Modules 列表,看是否有 mod_rewrite 即可,如果没有,需要联系你的主机商开启。

    dede后台开启伪静态
    (图片来源网络,侵删)
  • 配置 .htaccess 文件

    1. 通过FTP或主机控制面板,进入你的网站根目录()。
    2. 找到或创建一个名为 .htaccess 的文件,如果已经存在,请直接编辑它。
    3. 将以下代码添加到文件的开头(注意:如果文件中已有 RewriteEngine on,就不要重复添加)。
    # 将 RewriteEngine 开启
    RewriteEngine On
    # DedeCMS 伪静态规则
    RewriteRule ^index\.html$ /index\.php [L]
    RewriteRule ^list-([0-9]+)\.html$ /plus/list\.php\?tid=$1 [L]
    RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list\.php\?tid=$1&totalresult=$2&PageNo=$3 [L]
    RewriteRule ^view-([0-9]+)-([0-9]+)\.html$ /plus/view\.php?arcID=$1&pageno=$2 [L]
    RewriteRule ^view-([0-9]+)\.html$ /plus/view\.php?arcID=$1 [L]

    注意:如果你的网站安装在了子目录(http://www.yourdomain.com/dede/),你需要将规则中的 修改为 /你的子目录/RewriteRule ^index\.html$ /dede/index\.php [L]

Nginx 服务器 (.conf 配置)

如果你使用的是Nginx服务器(如VPS、云服务器),需要修改Nginx的配置文件。

  • 修改 nginx.conf 或站点配置文件

    1. 通过SSH或FTP登录服务器,找到你的Nginx站点配置文件,通常位于 /usr/local/nginx/conf/vhost/你的域名.conf/etc/nginx/sites-available/你的域名
    2. server { ... } 块中,添加以下 location 规则。
    # 在 server 块内添加以下规则
    location / {
        # ... 其他 rewrite 规则 ...
        if (!-e $request_filename) {
            rewrite "^/index\.html$" /index.php last;
            rewrite "^/list-([0-9]+)\.html$" /plus/list.php?tid=$1 last;
            rewrite "^/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$" /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 last;
            rewrite "^/view-([0-9]+)-([0-9]+)\.html$" /plus/view.php?arcid=$1&pageno=$2 last;
            rewrite "^/view-([0-9]+)\.html$" /plus/view.php?arcid=$1 last;
        }
    }
  • 重载Nginx配置: 修改完配置文件后,需要重载Nginx使配置生效。

    sudo nginx -s reload
    # 或者使用 service
    sudo service nginx reload

IIS 服务器 (web.config)

如果你的服务器是Windows系统,使用IIS,则需要配置 web.config 文件。

  1. 确保你的服务器已安装 URL Rewrite 模块,如果没有,请从微软官网下载安装。

  2. 在网站根目录下创建或编辑 web.config 文件。

  3. <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>
                    <rule name="DedeCMS Rule 1">
                        <match url="^index\.html$" ignoreCase="false" />
                        <action type="Rewrite" url="index.php" />
                    </rule>
                    <rule name="DedeCMS Rule 2">
                        <match url="^list-([0-9]+)\.html$" ignoreCase="false" />
                        <action type="Rewrite" url="plus/list.php?tid={R:1}" />
                    </rule>
                    <rule name="DedeCMS Rule 3">
                        <match url="^list-([0-9]+)-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" />
                        <action type="Rewrite" url="plus/list.php?tid={R:1}&totalresult={R:2}&PageNo={R:3}" />
                    </rule>
                    <rule name="DedeCMS Rule 4">
                        <match url="^view-([0-9]+)-([0-9]+)\.html$" ignoreCase="false" />
                        <action type="Rewrite" url="plus/view.php?arcid={R:1}&pageno={R:2}" />
                    </rule>
                    <rule name="DedeCMS Rule 5">
                        <match url="^view-([0-9]+)\.html$" ignoreCase="false" />
                        <action type="Rewrite" url="plus/view.php?arcid={R:1}" />
                    </rule>
                </rules>
            </rewrite>
        </system.webServer>
    </configuration>

第二步:DedeCMS 后台设置

当服务器配置完成后,就可以登录DedeCMS后台进行设置了。

  1. 登录DedeCMS后台:使用你的管理员账号登录。

  2. 进入“系统” -> “系统基本参数”

    • 在左侧菜单栏中找到并点击“系统”。
    • 在下拉菜单中选择“系统基本参数”。
  3. 修改“核心设置”中的选项

    • 在“站点设置”选项卡中,找到 “是否使用伪静态” 这一项。
    • 将其选项从“不使用”修改为 “是”
  4. (可选)自定义URL规则

    • 在同一个页面,切换到“核心设置”选项卡。
    • 你可以在这里自定义栏目和文章页的URL命名规则,
      • 栏目页URL规则list/{tid}.html
      • 文章页URL规则view/{aid}.html
    • 修改后,DedeCMS在生成链接时会遵循你定义的规则。但前提是你的服务器配置(如.htaccess)必须支持你自定义的规则。
  5. 保存设置

    页面最下方有一个“保存”按钮,点击它保存所有更改。

  6. 更新网站缓存和栏目/文章

    • 为了确保新的伪静态链接生效,建议执行以下操作:
      • 进入“系统” -> “一键更新网站” -> “更新系统缓存”。
      • 再次进入“一键更新网站”,分别点击“更新栏目HTML”和“更新文档HTML”,这一步会根据你的新设置重新生成所有页面的链接。

第三步:验证与常见问题

完成以上两步后,你的DedeCMS伪静态就开启了。

如何验证?

  1. 前台查看:打开你的网站首页、栏目页和文章页,观察浏览器地址栏的URL是否已经变成了你设置的伪静态格式(如 http://www.yourdomain.com/view-123.html)。
  2. 点击测试:点击栏目链接和文章链接,看是否能正常打开,而不是跳转到404页面。

常见问题排查

  • 问题1:开启后访问所有伪静态链接都返回404错误。

    • 原因:99%的可能是因为服务器没有配置伪静态规则,请返回第一步,仔细检查你的 .htaccessnginx.confweb.config 文件是否正确上传并配置。
  • 问题2:首页正常,但栏目页和文章页404。

    • 原因:服务器规则可能不完整,请检查你的服务器配置文件,确保包含了栏目和文章页面的Rewrite规则。
  • 问题3:后台更新缓存后,网站首页也打不开了。

    • 原因:可能是 .htaccess 文件语法错误,请检查文件中是否有拼写错误,或者 RewriteEngine On 是否在所有规则之前,可以尝试将 .htaccess 文件改名(如 .htaccess.bak),看看网站是否能恢复正常,如果恢复正常,说明就是该文件的问题。
  • 问题4:URL中有 出现。

    • 原因:伪静态没有完全生效,这通常意味着服务器没有正确处理重写请求,请再次检查服务器配置。

总结一下流程: 服务器配置(.htaccess等) → 后台开启“是否使用伪静态” → 更新网站缓存 → 验证效果。

按照这个流程操作,绝大多数情况下都能成功开启DedeCMS的伪静态功能,祝你操作顺利!

-- 展开阅读全文 --
头像
c语言谭浩强第四版ppt哪里找?
« 上一篇 今天
耿国华数据结构用C语言描述有何独特之处?
下一篇 » 今天
取消
微信二维码
支付宝二维码

目录[+]