深圳全飞鸿

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 108|回复: 4
打印 上一主题 下一主题

解决Fastadmin中C框架的网址显示问题

[复制链接]

11

主题

27

帖子

147

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
147
跳转到指定楼层
楼主
发表于 2025-2-14 11:57:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
针对点击菜单栏,网址进行跳转,可能会跳到别的网址中

2efd257c14873921dc7566ae35a91b3.png (109.02 KB, 下载次数: 20)

2efd257c14873921dc7566ae35a91b3.png
回复

使用道具 举报

11

主题

27

帖子

147

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
147
沙发
 楼主| 发表于 2025-2-14 12:00:08 | 只看该作者
解决方案:初步将所有的网址后缀进行屏蔽

1739505588256.jpg (1.74 KB, 下载次数: 21)

1739505588256.jpg

1739505558780.jpg (69.69 KB, 下载次数: 23)

1739505558780.jpg
回复 支持 反对

使用道具 举报

11

主题

27

帖子

147

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
147
板凳
 楼主| 发表于 2025-3-3 13:59:45 | 只看该作者
本帖最后由 f008 于 2025-3-6 14:06 编辑
f008 发表于 2025-2-14 12:00
解决方案:初步将所有的网址后缀进行屏蔽

最终方案:按照如图所示在对应文件的对应位置操作即可实现
同时.htaccess脚本也需要更改,此处为以修改过后的
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteBase /erp/

  4. # Redirect root to C.php
  5.     RewriteRule ^$ /erp/C.php [L,R=301]

  6. RewriteCond %{REQUEST_FILENAME} !-f
  7. RewriteCond %{REQUEST_FILENAME} !-d
  8. RewriteRule ^L/(.*)?$ /erp/L.php/$1 [NC] [L]
  9. RewriteRule ^R/(.*)?$ /erp/R.php/$1 [NC] [L]
  10. RewriteRule ^A/(.*)?$ /erp/A.php/$1 [NC] [L]
  11. RewriteRule ^P/(.*)?$ /erp/P.php/$1 [NC] [L]
  12. RewriteRule ^J/(.*)?$ /erp/J.php/$1 [NC] [L]
  13. </IfModule>
复制代码



1740981791509.jpg (93.3 KB, 下载次数: 14)

1740981791509.jpg

1740981915640.jpg (2.82 KB, 下载次数: 10)

1740981915640.jpg
回复 支持 反对

使用道具 举报

11

主题

27

帖子

147

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
147
地板
 楼主| 发表于 2025-4-22 16:05:28 | 只看该作者
f008 发表于 2025-3-3 13:59
最终方案:按照如图所示在对应文件的对应位置操作即可实现
同时.htaccess脚本也需要更改,此处为以修改 ...

在一个服务器中如果存在一个以上的C框架系统时,要改变解决方案,之前的方案只适用于服务器中只有一个C框架系统
回复 支持 反对

使用道具 举报

11

主题

27

帖子

147

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
147
5#
 楼主| 发表于 2025-4-22 16:15:31 | 只看该作者
本帖最后由 f008 于 2025-4-22 16:18 编辑
f008 发表于 2025-4-22 16:05
在一个服务器中如果存在一个以上的C框架系统时,要改变解决方案,之前的方案只适用于服务器中只有一个C框 ...

案例:针对于思凌科的服务器中,存在sfc和label两个系统,使用之前的方法会使这两个系统中的其中一个系统无法定位到网页从而无法显示改动方案:在此目录下C:\Apache24\htdocs\lib\fastadmin-addtabs打开jquery.addtabs文件,找到相应代码进行改动在50行左右
  1. document.title = title;
  2.                 if (history.pushState && !$(this).data("pushstate")) {
  3.                     var pushurl = url.indexOf("ref=addtabs") === -1 ? (url + (url.indexOf("?") > -1 ? "&" : "?") + "ref=addtabs") : url;
  4.                     try {
  5.                       //  window.history.pushState(state, title, pushurl);
  6.                     } catch (e) {

  7.                     }
  8.                 }
复制代码
上述为原先的代码,要修改为
  1. document.title = title;
  2. if (history.pushState && !$(this).data("pushstate")) {
  3.     // 提取主目录(路径中的第一个非空段)
  4.     const path = window.location.pathname;
  5.     const mainDir = path.split('/').filter(segment => segment !== '')[0] || '';
  6.    
  7.     // 构造纯净 URL(协议://域名/主目录)
  8.     const newUrl = `${window.location.origin}${mainDir ? '/' + mainDir : '/'}`;
  9.    
  10.     try {
  11.         window.history.pushState(null, title, newUrl);
  12.     } catch (e) {
  13.         console.error('pushState 失败:', e);
  14.     }
  15. }
复制代码




这样就可以准确的定位到对应的系统当中,同时又可以解决C框架的显示问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|nagomes  

GMT+8, 2025-5-4 18:03 , Processed in 0.034051 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表