weblogic控制台地址
WebLogic控制台的控制默认地址是 http://localhost:7001/console。这行字我背了十年,台地几乎成了肌肉记忆。控制但真正的台地问题从来不是这个地址,而是控制你敲下回车之后,屏幕上弹出来的台地那个登录框。
我第一次部署WebLogic是控制在2014年,一个老旧的台地金融项目。当时运维扔给我一张纸,控制上面写着IP和端口,台地末了加一句“控制台自己找”。控制我花了半小时才搞明白,台地原来光有IP和端口不够,控制路径里必须带/console。台地更坑的控制是,有些版本对大小写敏感,你输入/Console,它直接给你404。那种挫败感,跟你在导航里输错一个字母然后被带到荒郊野外一模一样。
地址本身很简单,但背后藏着几个容易踩的坑。第一,端口号不固定。默认是7001,可生产环境里为了安全,管理员经常改成别的,比如7002、8001,甚至映射到80端口。你得去问运维,或者翻配置文件config.xml里的listen-port标签。第二,控制台不一定开在管理服务器上。WebLogic有集群,管理服务器(AdminServer)和托管服务器(ManagedServer)分工不同,控制台只跑在管理服务器上。你要是对着托管服务器的IP和端口去访问,十有八九是连接被拒。
还有种情况更隐蔽——管理服务器启动了,但控制台模块没启用。这通常发生在你改了安全设置或者部署了自定义安全提供者之后。这时候地址栏里输什么都是白搭,页面会一直转圈,最后给你个“无法访问此网站”。我遇到过一回,排查了半天,最后发现是某个补丁把控制台的context path给改了,从/console变成了/console2。你说气不气人?
所以,与其死记那个默认地址,不如掌握一套排查思路。先确认管理服务器进程活着,用netstat -an | grep 7001看看端口在不在监听。然后测一下HTTP响应,curl -I http://ip:7001/console,看返回的是200还是302。302是好事,说明控制台在,只是把你重定向到登录页。如果返回404,那就是路径不对;如果连接超时,那就是防火墙挡了,或者管理服务器压根没起。
再说个细节。现在WebLogic 12c之后的版本,控制台登录默认要求用户名和密码。但很多人不知道,第一次启动时,如果你在boot.properties里没写凭据,系统会让你在启动过程中交互式输入。你要是用脚本后台启动,没管这个输入,那控制台就永远进不去,因为账号压根没初始化。这时候唯一的办法是去域目录下的servers/AdminServer里删掉data文件夹里的嵌入式LDAP数据,然后重启,重新创建管理员。麻烦,但管用。
最后说句实在话。控制台地址这种东西,网上搜一下一大把,但真正值钱的是你怎么理解它背后的逻辑。WebLogic的控制台本质是一个Java EE应用,跑在管理服务器的Web容器里。它和你的业务应用共享同一个JVM,所以有时候业务应用内存溢出,控制台也跟着卡死。这时候你访问地址,页面能打开,但登录按钮点了没反应。别慌,那不是地址错了,是JVM快挂了。先看AdminServer.log,再决定是重启还是加内存。
地址是死的,人是活的。下次再有人问你WebLogic控制台地址,你直接告诉他http://ip:port/console,顺便加一句“端口去config.xml里查,路径不对就试/console和/console2”。他要是还搞不定,那问题多半不在地址上。
