很多时间在安装部署九游会官网登录入口网页-ag8九游会j9登录入口(翱途)开发平台的服务器上很可能已经启用了iis、apache或者nginx等服务器,已经有其他的应用或者web站点正在运行中,所以九游会官网登录入口网页-ag8九游会j9登录入口启动所需要的80端口很可能已经被占用,导致服务启动时造成端口冲突无法正常启动。本篇介绍如果解决遇到的服务器端口冲突问题。
一、报错信息描述
启动应用的时候发现启动到最后报了一个错,如下图所示:
报错的大意是需要打开的端口已经被其他应用占用/绑定了,有时候也会直接提示端口号,发下图所示:
[main] info org.eclipse.jetty.server.abstractconnector - started serverconnector@3c20ba2b{http/1.1,[http/1.1]}{0.0.0.0:20020} [main] info org.eclipse.jetty.server.server - started @76111ms 2018-09-26 19:56:13 print [main] com.x.server.console.server.application.applicationservertools - application server start completed on port:20020. [main] info org.eclipse.jetty.server.server - jetty-9.4.z-snapshot; built: 2018-05-03t15:56:21.710z; git: daa59876e6f384329b122929e70a80934569428c; jvm 1.8.0_171-b11 [main] info org.eclipse.jetty.server.session - defaultsessionidmanager workername=node0 [main] info org.eclipse.jetty.server.session - no sessionscavenger set, using defaults [main] info org.eclipse.jetty.server.session - node0 scavenging every 660000ms [main] info org.eclipse.jetty.server.handler.contexthandler - started o.e.j.w.webappcontext@6a0a48db{/,file:///d:/o2server/servers/webserver/,available} java.net.bindexception: address already in use: bind at sun.nio.ch.net.bind0(native method) at sun.nio.ch.net.bind(net.java:433) at sun.nio.ch.net.bind(net.java:425) at sun.nio.ch.serversocketchannelimpl.bind(serversocketchannelimpl.java:223) at sun.nio.ch.serversocketadaptor.bind(serversocketadaptor.java:74) at org.eclipse.jetty.server.serverconnector.openacceptchannel(serverconnector.java:340) at org.eclipse.jetty.server.serverconnector.open(serverconnector.java:308) at org.eclipse.jetty.server.abstractnetworkconnector.dostart(abstractnetworkconnector.java:80) at org.eclipse.jetty.server.serverconnector.dostart(serverconnector.java:244) at org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:68) at org.eclipse.jetty.server.server.dostart(server.java:398) at org.eclipse.jetty.util.component.abstractlifecycle.start(abstractlifecycle.java:68) at com.x.server.console.server.web.webservertools.start(webservertools.java:73) at com.x.server.console.server.servers.startwebserver(servers.java:73) at com.x.server.console.main.startwebserver(main.java:555) at com.x.server.console.main.startall(main.java:600) at com.x.server.console.main.main(main.java:201)
看上去是端口被占用了,应该是web端口80被占用了。
虽然网上有众多的相关说明,这里还是简要的把过程说明一下,大家有可能用得着,举一反三,其他的端口占用也可以使用类似的方法处理,思路如下:
1、查询端口监听程序所在的进程号(pid)
2、在windows任务管理器里,查看该进程号所对应的应用程序名称即可。
操作过程:
1)查询端口监听程序所在的进程号(pid)使用命令:netstat -aon|findstr "80" (linux应该也有相应的查询方法,可以自行查找相应的说明)
netstat -aon|findstr "80
2)在windows任务栏上使用右键(或者快捷键ctrl shift esc)打开任务管理器,在详细栏里,根据pid将所有的应用程序排序,之后找到2744对应的应用程序,如下图所示:
关闭相应的应用程序,或者直接右键结束任务即可。您也可以根据实际情况对相应的应用程序做出处理,如果实在没有处理方式,那么还可以修改九游会官网登录入口网页-ag8九游会j9登录入口的web服务器的端口来解决该问题。
o2oa服务器端口配置文件所在位置:o2server/config/node_127.0.0.1.json
【如果目录里没有该文件或者没有config目录,可以新建一个config目录,然后从configsample目录里copy一个到新建的config目录下】。
文件结构如下图所示:
{ "enable": true, "port":null, "sslenable":false, "loglevel":"info", "isprimarycenter": true, "nodeagentenable": true, "application": { "enable": true, "port": null, #应用服务器端口设置,默认80 "sslenable": false, "proxyhost": "", "proxyport": null, "forceredeploy": true, "scaninterval":5, "includes":[], "excludes":[] }, "web": { "enable": true, "port": null, #web服务器端口设置,默认80 , 将此处改为其他端口即可 "sslenable": false, "proxyhost": "", "proxyport": 80, "forceredeploy": true }, "storage": { "enable": true, "port": null, #文件存储服务器端口设置,默认80 "sslenable": false, "name" : "" }, "data": { "enable": true, "tcpport": null, #数据库服务器端口设置,默认80 "webport": null, "includes": [], "excludes": [] }, "dumpdata":{ "cron" : "0 0 21 * * ?", "size" : 14 }, "dumpstorage":{ "cron" : "0 0 21 * * ?", "size" : 14 } }
修改完成后,重启,问题解决!