手机伪静态织梦更新后如何配置?

99ANYc3cd6
预计阅读时长 12 分钟
位置: 首页 织梦建站 正文
  1. 服务器端配置:告诉Web服务器(如Apache或Nginx)如何将形如 /m/ 的URL重写为真实的PHP文件路径。
  2. 织梦后台配置:告诉织梦系统使用伪静态规则,并生成对应的链接。

第一步:服务器端配置

这是最关键的一步,你需要根据你的服务器环境选择对应的配置方法。

使用 Nginx 服务器 (推荐,现在主流虚拟主机和云服务器大多用Nginx)

Nginx的配置非常高效,你需要修改Nginx的配置文件(通常是 nginx.conf 或站点配置文件 yourdomain.conf),在 server 块内添加以下规则。

完整的Nginx伪静态规则(手机站):

server {
    # ... 其他你的服务器配置 ...
    # 手机站伪静态规则开始
    if ($host ~* "^www\.yourdomain\.com$") {
        rewrite ^/m/(.*)$ /m/index.php?$1 last;
    }
    if ($host ~* "^(.*)\.yourdomain\.com$") {
        rewrite ^/m/(.*)$ /m/index.php?$1 last;
    }
    # 手机站伪静态规则结束
    # ... 其他你的服务器配置 ...
}

规则解释:

  • if ($host ~* ...): 判断访问的域名是否匹配。yourdomain.com 请替换成你自己的域名。
  • rewrite ^/m/(.*)$ /m/index.php?$1 last;: 这是核心重写规则。
    • ^/m/(.*)$: 匹配所有以 /m/ 开头的URL,并将其后的所有内容()捕获到一个变量($1)中。
    • /m/index.php?$1: 将捕获到的内容作为查询参数,重写到 /m/index.php
    • last: 停止处理当前的 rewrite 规则,并根据重写后的URL继续搜索匹配的 location 规则。

如何应用配置:

  1. 将上述代码添加到你的Nginx配置文件中。
  2. 保存文件。
  3. 执行命令 nginx -s reload 或重启Nginx服务使配置生效,如果你使用的是虚拟主机,请联系你的主机商帮你添加。

使用 Apache 服务器

Apache的配置通常通过 .htaccess 文件实现,这对于使用虚拟主机的用户非常方便。

确保 Apache 开启了 mod_rewrite 模块 大多数虚拟主机默认已开启,如果你自己管理服务器,可以通过 apache2ctl -M 命令检查。

创建或修改 /m/ 目录下的 .htaccess 文件 在你的网站根目录下,找到 m 文件夹,在里面创建一个名为 .htaccess 的文件(如果已存在则编辑它)。

完整的Apache .htaccess 规则(手机站):

<IfModule mod_rewrite.c>
  RewriteEngine On
  # 绑定域名到手机版,如果你的手机站是独立子域名,这里需要调整
  # RewriteBase /m/
  # 将所有请求重写到 index.php
  RewriteRule ^(.)$ index\.php?$1 [QSA,PT,L]
</IfModule>

规则解释:

  • RewriteEngine On: 开启URL重写引擎。
  • RewriteRule ^(.)$ index\.php?$1 [QSA,PT,L]: 核心重写规则。
    • ^(.)$: 匹配当前目录(/m/)下的所有路径。
    • index\.php?$1: 将匹配到的路径作为查询参数,重写到 index.php
    • [QSA,PT,L]: 是一些标记。
      • QSA (Query String Append): 保留原有的查询参数。
      • PT (Pass Through): 将重写后的URL交由后续的处理器处理,这步很重要,确保能被PHP正确处理。
      • L (Last): 停止处理后续的Rewrite规则。

如何应用配置:

  1. 将上述代码保存到 /m/.htaccess 文件中。
  2. 确保该文件的上传权限是正确的(通常是 644)。

第二步:织梦后台配置

服务器配置好后,你需要告诉织梦系统使用这些规则。

  1. 登录织梦后台 (/dede/)。

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

  3. 在左侧菜单选择“核心设置”

  4. 找到以下几项并进行修改:

    • 是否使用伪静态:选择 “是”
    • 手机站是否启用:选择 “是”。 (这一步是启用手机站功能的前提)
    • 手机站栏目路径:设置为 /m
    • 路径:设置为 /m
  5. 进入“栏目管理”

    • 找到你的顶级栏目(通常是“站内栏目”),点击后面的“移动”按钮。
    • 在弹出的窗口中,选择 “移动到手机站点”,并选择对应的手机版栏目。
    • 重复此操作,将所有需要在手机站显示的栏目都移动过去。
  6. 进入“频道管理”

    同样地,将“文章”、“图集”等需要显示在手机站的频道也移动到手机站点。

  7. 更新缓存和生成

    • 进入“系统” -> “一键更新网站”。
    • 先点击“更新系统缓存”。
    • 然后选择“更新栏目HTML”和“更新文档HTML”,为手机站重新生成页面,这一步非常重要,它会根据你刚才设置的 /m 路径,生成带有伪静态链接的HTML页面。

第三步:验证与测试

完成以上所有步骤后,你的手机站伪静态就设置成功了,现在进行验证:

  1. 访问手机站首页:在浏览器中输入 http://www.yourdomain.com/m/,应该能正常显示,并且URL地址栏保持不变。
  2. 点击栏目:在手机站首页点击任意一个栏目链接,观察URL,它应该是类似 http://www.yourdomain.com/m/cate1/ 的形式,而不是 http://www.yourdomain.com/m/index.php?c=...
  3. 点击文章:进入一个文章列表页后,点击任意一篇文章,URL应该是类似 http://www.yourdomain.com/m/a/123.html 的形式。
  4. 检查源码:在浏览器中右键“查看网页源代码”,查找文章链接,确认它确实是 .html 结尾的伪静态链接,而不是带 的动态链接。

常见问题排查

  • 404 Not Found 错误
    • Nginx/Apache规则没生效:检查服务器配置是否正确添加,并已重启/重载服务。
    • .htaccess 文件权限或编码问题:确保文件是UTF-8无BOM格式编码,权限为644。
    • 织梦后台设置错误:确认“是否使用伪静态”和“手机站路径”都设置正确。
  • 页面能打开,但URL还是动态的

    这说明服务器重写可能没生效,或者织梦没有重新生成页面,请务必执行“一键更新网站”中的生成HTML步骤。

  • 手机站和PC站内容混乱

    请确保在“栏目管理”和“频道管理”中正确地将内容移动到了手机站点,移动操作是区分PC和手机站内容的关键。

按照以上步骤,你应该就能成功地为织梦CMS的手机站配置好伪静态了。

-- 展开阅读全文 --
头像
织梦如何加百度统计?30字疑问标题
« 上一篇 04-17
C语言中reserve是什么函数?
下一篇 » 04-17

相关文章

取消
微信二维码
支付宝二维码

目录[+]