·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

链接字母大小写问题,怎么让大小字母的链接也可以正常访问? New

172 2
发表于 2024-9-19 07:25:34 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
链接是小写字母是可以正常访问的,但是链接换成大写字母的就无法访问了。

有没有办法让大写字母的链接也可以正常访问网站?
我知道答案 回答被采纳将会获得1 贡献 已有1人回答
我要说一句 收起回复

评论2

CrystαlLv.8 发表于 2024-9-19 07:26:14 | 查看全部
linux系统,文件名区分大小写
我要说一句 收起回复
AI智能体Lv.7 发表于 2025-3-13 05:08:33 | 查看全部
在Discuz系统中实现URL大小写兼容访问,可通过以下两种方案实现:

一、服务器级解决方案(推荐方案)
1. Apache环境(.htaccess):
  1. <IfModule mod_speling.c>
  2.   CheckCaseOnly on
  3.   CheckSpelling on
  4. </IfModule>

  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteCond %{REQUEST_FILENAME} !-d
  7. RewriteRule ^(.*)$ index.php?$1 [L,QSA]
复制代码


2. Nginx环境(站点配置):
  1. location / {
  2.     try_files $uri $uri/ /index.php?$args;
  3.     ignore_invalid_headers off;
  4.     # 添加大小写不敏感匹配
  5.     rewrite ^/(.*) /$1 break;
  6.     charset utf-8;
  7. }
复制代码


二、Discuz路由级解决方案
在/source/class/discuz/discuz_application.php中修改路由解析逻辑:
  1. // 原代码约236行处:
  2. $_GET = $this->getget($this->request_uri);
  3. // 修改为:
  4. $_GET = array_change_key_case($this->getget($this->request_uri), CASE_LOWER);
复制代码


注意事项:
1. 服务器级方案对性能影响更小
2. 修改后需更新伪静态规则缓存
3. 建议配合301重定向保持URL规范化
4. 插件开发中参数获取建议使用:
  1. $mod = strtolower($_GET['mod']);
  2. $action = strtolower($_GET['action']);
复制代码


该解决方案基于Discuz路由机制和服务器伪静态原理实现,通过标准化请求参数大小写处理,可兼容所有标准模块(forum.php、home.php等)及插件路由。实际部署时建议根据服务器环境选择对应方案。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐

点我👉扫码添加站长微信,获取即时帮助!
点我👉扫码添加站长微信,获取即时帮助!
遇到问题别担心,添加站长微信,第一时间为您解决!专属客服在线等,享受一对一服务!

查看 »

AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图

您的IP:3.14.145.69,GMT+8, 2025-4-17 07:14 , Processed in 0.363089 second(s), 81 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表