tomcat本地配置单点登录 多项目部署
使用了单点登录,因为需要带权限,便在本地系统配置了单点登录。
前提:单点登录是编译好的,直接复制到 tomcat 安装路径 wtpwebapps 文件夹下,因为eclipse中要debug 或者run 但是sso 没有加入到server中的。
在server 启动后 直接更新server.xml文件 有两种方式:
1.将单点登录项目部署在相同端口下(默认8080)
直接在 <Host> 中添加
<Context docBase="D:\java\apache-tomcat-8.5.12\wtpwebapps\sso" path="/sso" reloadable="true" source="org.eclipse.jst.jee.server:sso"/>
路径为自己安装的tomcat的位置
server 的debug 启动后 修改 。
2.部署在不同端口下(测试用,8081)
新增一个Service
<Service name="SSO">
<Connector connectionTimeout="20000" port="8081" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
<Engine defaultHost="localhost" name="SSO">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host appBase="webapps1" autoDeploy="true" name="localhost" unpackWARs="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log." suffix=".txt"/>
<Context docBase="D:\java\apache-tomcat-8.5.12\wtpwebapps\sso" path="/sso" reloadable="true" source="org.eclipse.jst.jee.server:sso"/>
</Host>
</Engine>
</Service>
修改eclipse web.xml 单点登录配置端口
重新保存,debug 后,将添加的Service 放到server.xml中
单独访问 http://localhost:8081/sso/login,登录成功
2017-10-27 追加:以上方法操作复杂,必须要重启server restart 一下,有时候还没有效果。
昨天学到了一个新的方法,而且不用更改server.xml 文件
方法如下:
(1) 将现有的server删除掉。
(2)重新添加server ,选择tomcat ,添加好后,双击server
2.1 修改 server locations --> 选择中间
2.2 修改deploy path --改为webapps
2.3 保存
2.4 将单点登录的jar包 sso 复制到 tomcat安装路径下 webapps 文件夹下
启动server 即可直接进行单点登录了。这个方法只需修改一次即可。很方便。