jeecms 修改后台访问路径
我使用的是jeecmsV8版本。
1.修改web.xml(/jeecms/WebContent/WEB-INF/web.xml)
修改JeeCmsAdmin这个servlet,把/jeeadmin/jeecms/*替换成你想要的后台访问路径。
注:此处替换的路径必须为三层或四层,否则会报错。(你可以去修改源码)
- /*
- * 获得第三个路径分隔符的位置
- *
- * @param request
- * @throws IllegalStateException
- * 访问路径错误,没有三(四)个'/'
- */
- private static String getURI(HttpServletRequest request)
- throws IllegalStateException {
- UrlPathHelper helper = new UrlPathHelper();
- String uri = helper.getOriginatingRequestUri(request);
- String ctxPath = helper.getOriginatingContextPath(request);
- int start = 0, i = 0, count = 2;
- if (!StringUtils.isBlank(ctxPath)) {
- count++;
- }
- while (i < count && start != -1) {
- start = uri.indexOf('/', start + 1);
- i++;
- }
- if (start <= 0) {
- throw new IllegalStateException(
- "admin access path not like '/jeeadmin/jeecms/...' pattern: "
- + uri);
- }
- return uri.substring(start);
- }
2.修改shiro配置文件(/jeecms/WebContent/WEB-INF/config/shiro-context.xml)
把shiro-context.xml配置文件里面的/jeeadmin/jeecms全部替换成你自己设置的后台访问路径 , 要和web.xml里设置的保持一致
shiro-context.xml中红色部分替换掉
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
- http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd"
- default-lazy-init="true">
- <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
- <property name="securityManager" ref="securityManager" />
- <property name="loginUrl" value="/login.jspx" />
- <property name="successUrl" value="/" />
- <property name="filters">
- <util:map>
- <entry key="authc" value-ref="authcFilter" />
- <entry key="user" value-ref="userFilter" />
- <entry key="logout" value-ref="logoutFilter" />
- </util:map>
- </property>
- <!--anon匿名 authc登录认证 user用户已登录 logout退出filter-->
- <property name="filterChainDefinitions">
- <value>
- *.jspx = anon
- *.jhtml = anon
- /member/forgot_password.jspx = anon
- /member/password_reset.jspx = anon
- /member/jobapply.jspx = anon
- /login.jspx = authc
- /logout.jspx = logout
- /member/** = user
- /jeeadmin/jeecms/login.do = authc
- /jeeadmin/jeecms/logout.do = logout
- /jeeadmin/jeecms/** =user
- </value>
- </property>
- </bean>
- <!-- Shiro Filter -->
- <bean id="adminUrlBean" class="com.jeecms.core.security.CmsAdminUrl">
- <property name="adminLogin" value="/jeeadmin/jeecms/login.do"/>
- <property name="adminPrefix" value="/jeeadmin/jeecms/"/>
- </bean>
- <bean id="authcFilter" class="com.jeecms.core.security.CmsAuthenticationFilter" parent="adminUrlBean">
- <property name="adminIndex" value="/jeeadmin/jeecms/index.do"/>
- </bean>
- <bean id="userFilter" class="com.jeecms.core.security.CmsUserFilter" parent="adminUrlBean"/>
- <bean id="logoutFilter" class="com.jeecms.core.security.CmsLogoutFilter" parent="adminUrlBean"/>
- <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
- <property name="cacheManager" ref="shiroEhcacheManager"/>
- <property name="rememberMeManager" ref="rememberMeManager"/>
- <property name="realm" ref="authorizingRealm" />
- </bean>
- <bean id="authorizingRealm" class="com.jeecms.core.security.CmsAuthorizingRealm">
- <property name="credentialsMatcher">
- <bean class="org.apache.shiro.authc.credential.HashedCredentialsMatcher">
- <property name="hashAlgorithmName" value="MD5"/>
- <!-- true means hex encoded, false means base64 encoded -->
- <property name="storedCredentialsHexEncoded" value="true"/>
- <!-- 迭代次数 -->
- <property name="hashIterations" value="1" />
- </bean>
- </property>
- <property name="cmsUserMng" ref="cmsUserMng" />
- </bean>
- <bean id="shiroEhcacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager">
- <!--
- <property name="cacheManagerConfigFile">
- <value>classpath:ehcache-shiro.xml</value>
- </property>
- -->
- <property name="cacheManager">
- <ref local="cacheManager"/>
- </property>
- </bean>
- <bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
- <constructor-arg value="rememberMe"/>
- <property name="httpOnly" value="true"/>
- <property name="maxAge" value="31536000"/><!-- 365天 -->
- </bean>
- <!-- rememberMe管理器 -->
- <bean id="rememberMeManager" class="org.apache.shiro.web.mgt.CookieRememberMeManager">
- <property name="cipherKey" value="#{T(org.apache.shiro.codec.Base64).decode('4AvVhmFLUs0KTA3Kprsdag==')}"/>
- <property name="cookie" ref="rememberMeCookie"/>
- </bean>
- <!-- Enable Shiro Annotations for Spring-configured beans. Only run after -->
- <!-- the lifecycleBeanProcessor has run: -->
- <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor" />
- </beans>
到此,搞定!
个人理解,如有错误之处,还望各位指出.
jeecms 修改后台访问路径的更多相关文章
- jeecms怎么修改后台访问路径?
1,修改后台访问路径: 如:http://localhost:8080/jeeadmin/jeecms/login.do 改:http://localhost:8080/hailou/index.do ...
- jeecms v9修改后台访问地址
将jeeadmin/jeecms/index.do 改为admin/index.do为例 修改WebContent\WEB-INF\web.xml <servlet-mapping> &l ...
- 修改weblogic访问路径应用名称
第一种:在应用WEB-INF文件夹下创建weblogic.xml文件,内容如下,其中<context-root>/abc</context-root>为路径上的应用名 < ...
- ecshop修改后台访问地址
本文转自‘做个好男人’的博客. 打开data/config.php,找到define(’ADMIN_PATH’,’admin’),这里是定义后台目录的地方,把其中的admin换成你的后台自定义目录,如 ...
- 修改tomcat访问路径
<Context path="/pc" docBase="/data/www/8084/kabao-pc-consume/" reloadable=&qu ...
- 更改yii框架入口文件位置,修改前后端访问路径
将frontend/web/index.php复制到项目根目录,修改为: <?php defined('YII_DEBUG') or define('YII_DEBUG', true); def ...
- ecshop后台admin路径怎么修改
ecshop后台admin路径怎么修改 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2013-03-25 ecshop如何修改后台admin路径? 大家都知道ec ...
- springboot系列三、springboot 单元测试、配置访问路径、多个配置文件和多环境配置,项目打包发布
一.单元测试 生成的demo里面包含spring-boot-starter-test :测试模块,包括JUnit.Hamcrest.Mockito,没有的手动加上. <dependency> ...
- PHPCMS后台登陆路径修改方法(V9版)
转自:http://hi.baidu.com/geek_cheng/item/b903ebe7b4ac3af9e0a5d4aa?qq-pf-to=pcqq.c2c 最新发布的PHPCMS V9由于采用 ...
随机推荐
- Jan&Feb 工作总结
一.工作任务: 熟悉dcbi项目(运维经分系统),完成指定需求. 熟悉bi项目(数据分析平台),完成指定需求. steel circus 主机游戏官网制作. 一拳超人游戏预注册页wap手机端制作. 二 ...
- <Python基础>字典的基本操作
''' 小知识 1.字典的键只能是不可变数据类型:int 元组 bool str(可哈希) 字典查找数据会使用二分查找,会先用哈希表将键转化为数字然后进行查找 ''' s = { "name ...
- linq to sql any和all的区别
Any说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).1.简单形式:仅返回没有订单的客户:var q =from c in db. ...
- CycloneII lcell_comb 和 lcell_FF 的结构
1,lcell_comb结构 2,lcell_FF结构 from : cycloneii_eda_fd.pdf
- BZOJ2741:[FOTILE模拟赛]L
Description FOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和. 即对于一个询问,你需要求出max(Ai xor Ai+1 xor Ai+2 .. ...
- 数论整除——cf1059D
用map是卡着过去的..题解用vector+离散化后常数小了十倍.. 总之就是把所有模数给保存下来然后离散化,再去匹配一下即可,最后有个细节 自己的 #include<bits/stdc++.h ...
- LUOGUP3498 [POI2010]KOR-Beads (哈希)
传送门 解题思路 这是一道上周的考试题...当时考的时候看了一眼,"呀,这不是调和级数,nlogn么!!!" ,然后一写就写了个n^2的....结果边界还弄错40分滚蛋了..正解就 ...
- C#可扩展编程之MEF(四):见证奇迹的时刻
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往 ...
- Linux 启动、关闭、重启服务的两种方式
1.一种是可以使用service脚本来调度,如: service 服务名 startservice 服务名 stopservice 服务名 restart 2.第二种可以直接进入/etc/init.d ...
- json-lib解决死循环
1.添加lazy=“false”(两个xml文件中都要添加) 2.设置过滤器