版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30553235/article/details/74971414

我使用的是jeecmsV8版本。

1.修改web.xml(/jeecms/WebContent/WEB-INF/web.xml)

修改JeeCmsAdmin这个servlet,把/jeeadmin/jeecms/*替换成你想要的后台访问路径。

注:此处替换的路径必须为三层或四层,否则会报错。(你可以去修改源码)

  1.  
    /*
  2.  
    * 获得第三个路径分隔符的位置
  3.  
    *
  4.  
    * @param request
  5.  
    * @throws IllegalStateException
  6.  
    * 访问路径错误,没有三(四)个'/'
  7.  
    */
  8.  
    private static String getURI(HttpServletRequest request)
  9.  
    throws IllegalStateException {
  10.  
    UrlPathHelper helper = new UrlPathHelper();
  11.  
    String uri = helper.getOriginatingRequestUri(request);
  12.  
    String ctxPath = helper.getOriginatingContextPath(request);
  13.  
    int start = 0, i = 0, count = 2;
  14.  
    if (!StringUtils.isBlank(ctxPath)) {
  15.  
    count++;
  16.  
    }
  17.  
    while (i < count && start != -1) {
  18.  
    start = uri.indexOf('/', start + 1);
  19.  
    i++;
  20.  
    }
  21.  
     
  22.  
    if (start <= 0) {
  23.  
    throw new IllegalStateException(
  24.  
    "admin access path not like '/jeeadmin/jeecms/...' pattern: "
  25.  
    + uri);
  26.  
    }
  27.  
    return uri.substring(start);
  28.  
    }

2.修改shiro配置文件(/jeecms/WebContent/WEB-INF/config/shiro-context.xml)

把shiro-context.xml配置文件里面的/jeeadmin/jeecms全部替换成你自己设置的后台访问路径 , 要和web.xml里设置的保持一致

shiro-context.xml中红色部分替换掉

  1.  
    <?xml version="1.0" encoding="UTF-8"?>
  2.  
    <beans xmlns="http://www.springframework.org/schema/beans"
  3.  
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util"
  4.  
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
  5.  
    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd"
  6.  
    default-lazy-init="true">
  7.  
     
  8.  
    <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
  9.  
    <property name="securityManager" ref="securityManager" />
  10.  
    <property name="loginUrl" value="/login.jspx" />
  11.  
    <property name="successUrl" value="/" />
  12.  
    <property name="filters">
  13.  
    <util:map>
  14.  
    <entry key="authc" value-ref="authcFilter" />
  15.  
    <entry key="user" value-ref="userFilter" />
  16.  
    <entry key="logout" value-ref="logoutFilter" />
  17.  
    </util:map>
  18.  
    </property>
  19.  
    <!--anon匿名 authc登录认证 user用户已登录 logout退出filter-->
  20.  
    <property name="filterChainDefinitions">
  21.  
    <value>
  22.  
    *.jspx = anon
  23.  
    *.jhtml = anon
  24.  
    /member/forgot_password.jspx = anon
  25.  
    /member/password_reset.jspx = anon
  26.  
    /member/jobapply.jspx = anon
  27.  
    /login.jspx = authc
  28.  
    /logout.jspx = logout
  29.  
    /member/** = user
  30.  
    /jeeadmin/jeecms/login.do = authc
  31.  
    /jeeadmin/jeecms/logout.do = logout
  32.  
    /jeeadmin/jeecms/** =user
  33.  
    </value>
  34.  
    </property>
  35.  
    </bean>
  36.  
    <!-- Shiro Filter -->
  37.  
    <bean id="adminUrlBean" class="com.jeecms.core.security.CmsAdminUrl">
  38.  
    <property name="adminLogin" value="/jeeadmin/jeecms/login.do"/>
  39.  
    <property name="adminPrefix" value="/jeeadmin/jeecms/"/>
  40.  
    </bean>
  41.  
    <bean id="authcFilter" class="com.jeecms.core.security.CmsAuthenticationFilter" parent="adminUrlBean">
  42.  
    <property name="adminIndex" value="/jeeadmin/jeecms/index.do"/>
  43.  
    </bean>
  44.  
    <bean id="userFilter" class="com.jeecms.core.security.CmsUserFilter" parent="adminUrlBean"/>
  45.  
    <bean id="logoutFilter" class="com.jeecms.core.security.CmsLogoutFilter" parent="adminUrlBean"/>
  46.  
    <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
  47.  
    <property name="cacheManager" ref="shiroEhcacheManager"/>
  48.  
    <property name="rememberMeManager" ref="rememberMeManager"/>
  49.  
    <property name="realm" ref="authorizingRealm" />
  50.  
    </bean>
  51.  
    <bean id="authorizingRealm" class="com.jeecms.core.security.CmsAuthorizingRealm">
  52.  
    <property name="credentialsMatcher">
  53.  
    <bean class="org.apache.shiro.authc.credential.HashedCredentialsMatcher">
  54.  
    <property name="hashAlgorithmName" value="MD5"/>
  55.  
    <!-- true means hex encoded, false means base64 encoded -->
  56.  
    <property name="storedCredentialsHexEncoded" value="true"/>
  57.  
    <!-- 迭代次数 -->
  58.  
    <property name="hashIterations" value="1" />
  59.  
    </bean>
  60.  
    </property>
  61.  
    <property name="cmsUserMng" ref="cmsUserMng" />
  62.  
    </bean>
  63.  
    <bean id="shiroEhcacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager">
  64.  
    <!--
  65.  
    <property name="cacheManagerConfigFile">
  66.  
    <value>classpath:ehcache-shiro.xml</value>
  67.  
    </property>
  68.  
    -->
  69.  
    <property name="cacheManager">
  70.  
    <ref local="cacheManager"/>
  71.  
    </property>
  72.  
    </bean>
  73.  
    <bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
  74.  
    <constructor-arg value="rememberMe"/>
  75.  
    <property name="httpOnly" value="true"/>
  76.  
    <property name="maxAge" value="31536000"/><!-- 365天 -->
  77.  
    </bean>
  78.  
    <!-- rememberMe管理器 -->
  79.  
    <bean id="rememberMeManager" class="org.apache.shiro.web.mgt.CookieRememberMeManager">
  80.  
    <property name="cipherKey" value="#{T(org.apache.shiro.codec.Base64).decode('4AvVhmFLUs0KTA3Kprsdag==')}"/>
  81.  
    <property name="cookie" ref="rememberMeCookie"/>
  82.  
    </bean>
  83.  
    <!-- Enable Shiro Annotations for Spring-configured beans. Only run after -->
  84.  
    <!-- the lifecycleBeanProcessor has run: -->
  85.  
    <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor" />
  86.  
    </beans>

到此,搞定!

个人理解,如有错误之处,还望各位指出.

jeecms 修改后台访问路径的更多相关文章

  1. jeecms怎么修改后台访问路径?

    1,修改后台访问路径: 如:http://localhost:8080/jeeadmin/jeecms/login.do 改:http://localhost:8080/hailou/index.do ...

  2. jeecms v9修改后台访问地址

    将jeeadmin/jeecms/index.do 改为admin/index.do为例 修改WebContent\WEB-INF\web.xml <servlet-mapping> &l ...

  3. 修改weblogic访问路径应用名称

    第一种:在应用WEB-INF文件夹下创建weblogic.xml文件,内容如下,其中<context-root>/abc</context-root>为路径上的应用名 < ...

  4. ecshop修改后台访问地址

    本文转自‘做个好男人’的博客. 打开data/config.php,找到define(’ADMIN_PATH’,’admin’),这里是定义后台目录的地方,把其中的admin换成你的后台自定义目录,如 ...

  5. 修改tomcat访问路径

    <Context path="/pc" docBase="/data/www/8084/kabao-pc-consume/" reloadable=&qu ...

  6. 更改yii框架入口文件位置,修改前后端访问路径

    将frontend/web/index.php复制到项目根目录,修改为: <?php defined('YII_DEBUG') or define('YII_DEBUG', true); def ...

  7. ecshop后台admin路径怎么修改

    ecshop后台admin路径怎么修改 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2013-03-25   ecshop如何修改后台admin路径? 大家都知道ec ...

  8. springboot系列三、springboot 单元测试、配置访问路径、多个配置文件和多环境配置,项目打包发布

    一.单元测试 生成的demo里面包含spring-boot-starter-test :测试模块,包括JUnit.Hamcrest.Mockito,没有的手动加上. <dependency> ...

  9. PHPCMS后台登陆路径修改方法(V9版)

    转自:http://hi.baidu.com/geek_cheng/item/b903ebe7b4ac3af9e0a5d4aa?qq-pf-to=pcqq.c2c 最新发布的PHPCMS V9由于采用 ...

随机推荐

  1. java_增强for循环

    增强for循环(foreach): 底层使用了迭代器,简化了迭代器的书写 JDK1.5新特性 所有的单列集合都可以使用增强for循环 for(集合/数组 的数据类型 变量名 : 集合名/数组名) pu ...

  2. Hibernate的多对一映射

    一.创建Java工程,新建Lib文件夹,加入Hibernate和数据库(如MySql.Oracle.SqlServer等)的Jar包,创建 hibernate.cfg.xml 文件,并配置,配置项如下 ...

  3. linux /bin/find 报错:paths must precede expression 及find应用

    1.问题描述,运行下面的命令,清楚日志 [resin@xx ~]$ ssh xxx  "/usr/bin/find /data/logs/`dirname st_qu/stdout.log` ...

  4. Android开发 layer-list详解

    参考:https://blog.csdn.net/speverriver/article/details/80925686 挖坑,以后填坑

  5. 自定义StringBuilder类拼接非空字符串

    主要目的: 为了拼接多个非空字符串,还能达到链式的装X效果这里不考虑线程安全,所以使用StringBuilder快速拼接非空内容,中间用","作为分隔. 代码如下: package ...

  6. 【转帖】WebRTC回声抵消模块简要分析

    webrtc 的回声抵消(aec.aecm)算法主要包括以下几个重要模块:回声时延估计:NLMS(归一化最小均方自适应算法):NLP(非线性滤波):CNG(舒适噪声产生).一般经典aec算法还应包括双 ...

  7. 第七章 Odoo 12开发之记录集 - 使用模型数据

    在上一篇文章中,我们概览了模型创建以及如何从模型中载入和导出数据.现在我们已有数据模型和相关数据,是时候学习如何编程与其进行交互 了.模型的 ORM(Object-Relational Mapping ...

  8. pb_ds(平板电视)简介

    据说NOI赛制可以用pbds,故整理常用方法: 1.splay 所需声明及头文件: #include <ext/pb_ds/tree_policy.hpp> #include <ex ...

  9. 基于SpringBoot+AntDesign的快速开发平台,JeecgBoot 2.0.2 版本发布

    Jeecg-Boot 是一款基于SpringBoot+代码生成器的快速开发平台! 采用前后端分离架构:SpringBoot,Ant-Design-Vue,Mybatis,Shiro,JWT. 强大的代 ...

  10. mtk 的conferrence call建立流程

    (重点看main_log与) 抓mtk log: 1.*#*#82533284#*#*      进入抓log UI 2.*#*#825364#*#*      进入工程模式 3.进入"Lo ...