经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口?

1、Windows平台
在windows命令行窗口下执行:

E:\oracle\ora92\bin>netstat -ano |find ":80"
TCP 172.18.2.56:3311 172.18.40.3:80 ESTABLISHED 3704
TCP 172.18.2.56:3319 172.18.65.7:80 ESTABLISHED 3704
TCP 172.18.2.56:4641 172.18.40.3:80 ESTABLISHED 3704
TCP 172.18.2.56:4734 172.18.65.7:80 ESTABLISHED 3704
TCP 172.18.2.56:4847 172.18.40.3:80 ESTABLISHED 3560
TCP 172.18.2.56:4848 172.18.40.3:80 ESTABLISHED 3560

有个PID为3560的进程占用了80端口,继续执行下面命令:
E:\oracle\ora92\bin>tasklist /svc |find "3560"
firefox.exe 3560 Console 0 147,564 K

可以发现是firefox的进程,并可看到占用的内存大小。

附netstat命令参数效果的对比:
E:\oracle\ora92\bin>netstat -a |find ":8080"
TCP wanhua:8080 0.0.0.0:0 LISTENING

E:\oracle\ora92\bin>netstat -an |find ":8080"
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING

E:\oracle\ora92\bin>netstat -ano |find ":8080"
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING

win7无法启动apache:

最近在WIN7中安装XAMPP,无法启动apache,显示的log为:

20:41:12  [Apache] Error: Apache shutdown unexpectedly. 
20:41:12  [Apache] This may be due to a blocked port, missing dependencies, 
20:41:12  [Apache] improper privileges, a crash, or a shutdown by another method. 
20:41:12  [Apache] Check the "/xampp/apache/logs/error.log" file 
20:41:12  [Apache] and the Windows Event Viewer for more clues

通过运行apache/bin/httpd.exe 打印如下log: 
(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : make_sock: could not bind to address 0.0.0.0:443

也就是443端口被占用,apache无法监听443端口,该如何解决呢?

最直接的方法是关闭占用443端口的进程: 
1.通过cmd中打印tasklist,查找占用443端口的进程。 
2.taskkill /pid 端口号 杀掉此进程,XAMPP重启apache即可。

利用netstat和tasklist查看PC的端口占用情况的更多相关文章

  1. 利用netstat和tasklist查看PC的端口占用情况 及80端口被占用

    经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口? 1.Windows平台在windows命令行窗口下执行: E:\oracle\ora92\bin>n ...

  2. 在windows命令行窗口下执行:查看所有的端口占用情况

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  3. windows查看端口占用 windows端口占用 查找端口占用程序 强制结束端口占用 查看某个端口被占用的解决方法 如何查看Windows下端口占用情况

    windows下查询端口占用情况 ,强制结束端口占用程序 查询8080端口被那个程序占用 如何强制结束windows下端口占用情况? 下面操作在win10下 在控制台执行命令   1.列出所有端口的情 ...

  4. 查看Linux下端口占用情况的命令

    在使用Linux系统的过程中,有时候会遇到端口被占用而导致服务无法启动的情况.比如HTTP使用80端口,但当启动Apache时,却发现此端口正在使用. 这种情况大多数是由于软件冲突.或者默认端口设置不 ...

  5. 如何查看Windows下端口占用情况

    开始---->运行---->cmd,或者是window+R组合键,调出命令窗口  输入命令:netstat -ano,列出所有端口的情况.在列表中我们观察被占用的端口,比如是49157,首 ...

  6. windows 如何查看端口占用情况?

    原文来自:http://www.iteye.com/topic/1117270 开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这 ...

  7. 【转】windows 如何查看端口占用情况?

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  8. Windows平台查看端口占用情况

    1.查看所有的端口占用情况 netstat -ano 协议    本地地址                     外部地址               状态                   PI ...

  9. centos下查看端口占用情况,杀死进程

    第一种:我们知道端口号用下面这种方法 有时候我们知道某个服务端口正在后台运行,想关掉它.比如说我tomcat是8080端口,在后台运行.怎么关掉它呢? 根据端口查看这个进程的pid netstat - ...

随机推荐

  1. PHP性能优化之:配置opcache

    启用opcache,并对配置参数进行优化 [opcache] zend_extension = /usr/local/php5/lib/php/extensions/no-debug-zts-2012 ...

  2. springmvc+mybatis如何分层

    通常情况下,我们之间调用mapper,spring会为我们注入其实现,很方便,mybatis也提供了一个generator供我们生成bean.dao接口等.但是总有一种感觉叫不爽,感觉除了bean和m ...

  3. python交换两个变量的值,一句代码搞定

    a = 10 b = 20 # 不需要中间变量,一步搞定 a, b = b, a

  4. SQL Sever MYSQL 视图实现的 2 种方式

    前期准备: 1.create table person  # 假设这张表用来收录所以有地球人的基本信息. (ID bigint , Name varchar(16), Country varchar( ...

  5. MYSQL 的 6 个返回时间日期函数

    方法1. curdate(),curtime(),now() 方法2. utc_date(),utc_time(),utc_datetime(); 可以看到utc时间相比东西八区要小8小时 注意. 返 ...

  6. Oracle EBS-SQL (BOM-19):主BOM与替代BOM互换.sql

    替代BOM与主BOM互相转换 BOM: 1-01-27-211       子件:1-01-27-416  ID:2202 BOM替代项:替代0001   子件: 1-01-26-204   ID:2 ...

  7. instsrv.exe下载和使用方法(微软Windows Server 2003 Resource Kit Tools工具中的一个)

    instsrv.exe是微软Windows Server 2003 Resource Kit Tools工具中的一个. Windows Server 2003 Resource Kit Tools是一 ...

  8. nginx配置方法

    nginx配置的代码: user www www; worker_processes 8; error_log /data111/logs/nginx/nginx-error.log crit; pi ...

  9. logback.xml配置详解

    先附上本文分析用的例子: <?xml version="1.0" encoding="UTF-8" ?> <configuration> ...

  10. 代理方法keywordAction与Fun的使用

    代理是一种特殊的,指向某个方法模块所在的地址.一般来讲,那个方法模块,能够是一个普通的方法,很多其它的时候,是一团匿名的lamda表达式,即一个匿名方法.如今简单理解一下代理的简写方式,即Action ...