(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address [::]:443

(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address [::]:443
在这里插入图片描述

问题

443端口被占用,修改配置文件中的端口号:
在这里插入图片描述

如果现实80端口被占用,那就修改conf/httpd.conf文件中的监听端口,改成8080或者8090等,只要不是被占用的就行。
在这里插入图片描述
在这里插入图片描述

正常运行的状态

在这里插入图片描述

  • 21
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
【资源说明】 基于java实现Socket套接字一对一聊天系统源码+项目说明.zip 该项目是个人毕设项目源码,评审分达到95分,都经过严格调试,确保可以运行!放心下载使用。 该项目资源主要针对计算机、自动化等相关专业的学生或从业者下载使用,也可作为期末课程设计、课程大作业、毕业设计等。 具有较高的学习借鉴价值!基础能力强的可以在此基础上修改调整,以实现类似其他功能。 简介 Socket,又称套接字,在TCP/IP协议分层架构中,属应用层和传输层之间的一个抽象层(也有的说是属于传输层),它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。 ![在这里插入图片描述](README.assets/01.png) ## 1.2 优点 1. 传输数据时间短,性能高 2. 可以加密,数据安全性强 3. 适合客户端和服务器端之间信息实时交互 4. 传输数据为字节级,传输数据可自定义,数据量小 ## 1.3 缺点 相对于http协议传输,增加了开发量 服务端 1. **创建Socket,bind()绑定地址,listen()监听套接字** > ServerSocket只需要一行代码就可以完成创建、绑定、监听Socket,绑定的地址没填默认就是本机的ip(在源码中InetAddress.anyLocalAddress()方法得出的结论),监听Socket监听的是改Socket的最大连接数,如果队列满时,会出现提示,并拒绝连接(源码的listen(int backlog)方法这样解释)。 ```java ServerSocket serverSocket = new ServerSocket(端口号); ``` 2. **accept()监听连接** > accept()方法侦听要与ServerSocket建立的连接并接受它。该方法会阻塞,直到建立连接。 ``` Socket socket = serverSocket.accept(); ``` 3. **read()读数据** 客户端 1. **创建Socket、connect()连接Socket** 客户端创建Socket,`new Socket(String host, int port);`需要抛出异常,当IP地址错误、端口号错误、服务器`ServerSocket`未启动时,都会抛出异常,即连接失败。 ```java try { Socket socket = new Socket(String host, int port); } catch (Exception e) { e.printStackTrace(); } ``` 2. **write()写数据** > 同服务端 3. **read()读数据** > 同服务端 4. **close()关闭连接** ```java // 方法一: socket.close(); // 方法二: // 给服务器发送相关消息,由服务器断开与指定客户端的连接 【备注】更多详情介绍见项目说明!
### 回答1: 这个错误信息表示当前系统中已经有一个程序在使用该通信端口协议/网络地址/端口号)了,因此另一个程序无法再次使用该通信端口。 这个问题可以通过以下几个步骤来解决: 1. 确认你的程序是否已经打开了一个与该通信端口相关的服务或连接。如果是,请尝试关闭该服务或连接,并重新启动程序以释放该通信端口。 2. 检查系统中是否有其他程序正在使用该通信端口。可以通过打开命令提示符窗口并输入“netstat -ano”命令来查看当前系统上打开的所有连接和端口信息。然后查找该通信端口的 PID(进程标识符),并使用任务管理器或命令行工具结束该进程。 3. 如果仍然无法解决问题,可以尝试更改程序使用的通信端口,或者使用其他程序。 希望这可以帮助解决你的问题。 ### 回答2: 在网络编程中,套接字是实现网络通信的基础。但是,当我们尝试运行一个程序并使用网络套接字时,我们可能会遇到“winerror 10048”的错误。这个错误的意思是:“通常每个套接字地址(协议/网络地址/端口)只允许使用一次。” 这个错误通常是由于套接字地址被占用而导致的。套接字地址是由协议网络地址端口号组成的。协议通常是TCP或UDP。网络地址是指计算机所在的网络地址端口号则是唯一标识一个进程的标识符。 当我们尝试在已经被占用的套接字地址上绑定套接字时,操作系统就会报错,提示“winerror 10048”。换句话说,每个端口在任何时候只能由一个进程使用。如果尝试将同一端口用于其他进程,则会导致端口冲突,从而导致该错误。 为了解决这个问题,我们可以修改被占用的端口号,或者停止使用端口的进程,以便我们的程序绑定到该端口上。另外,我们还可以选择使用另一个可用的端口号,而不是尝试在已经被占用的端口上进行绑定。 总之,“winerror 10048”错误提示只是告诉我们,我们不能在已经被占用的套接字地址上绑定套接字。在网络编程中,我们需要注意避免端口冲突,以确保程序的正常运行。 ### 回答3: WinError 10048 是一个套接字错误代码,表示在尝试绑定套接字到已经使用地址时发生了错误。这个错误通常出现在底层的操作系统网络功能中,也就是在其他应用程序访问网络资源时。 这个错误的含义是很明确的:每个套接字地址都是唯一的,不能被使用多次。套接字地址由三部分组成:协议网络地址端口协议指定了套接字使用的网络协议网络地址指定了套接字在网络中的位置,而端口则指定了套接字在计算机中的位置。 当一个应用程序尝试使用已经被其他应用程序使用套接字地址时,操作系统会返回 WinError 10048 错误代码。这个错误可能会导致应用程序无法使用网络资源,或者存在一定的安全风险。 为了避免 WinError 10048 错误,应用程序需要确保绑定到的套接字地址是唯一的。这可以通过检查当前系统中正在使用套接字地址列表来实现。如果当前系统中已经存在相同的套接字地址,应用程序需要选择一个未被使用地址。当然,系统管理员也需要避免为不同的应用程序使用相同的套接字地址。 总体而言,WinError 10048 错误是一个比较常见的网络错误,也是网络编程人员和系统管理员需要关注的一个问题。只有了解了套接字地址的唯一性,才能更好地保护计算机系统和应用程序的安全性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值