Apache Server Noob:没有可用的监听套接字
Posted
技术标签:
【中文标题】Apache Server Noob:没有可用的监听套接字【英文标题】:Apache Server Noob: no listening sockets available 【发布时间】:2015-09-26 16:45:11 【问题描述】:前言:我是网络新手,我可以制作网站,但我只是进入服务器等领域。
我最近下载了一个 Apache 服务器二进制文件 (Apache 2.4.12 x64)
当我尝试在命令提示符下运行服务器时,出现以下错误:
(OS 10048)每个套接字地址(协议/网络地址/端口)通常只允许使用一次。 : AH00072: make_sock: 无法绑定到地址 0.0.0.0:80
AH00451:没有可用的侦听套接字,正在关闭
AH00015:无法打开日志
我猜端口 80 已经被使用了。如何更改绑定端口,我应该使用哪个端口?如果还有问题怎么解决?
如果您需要任何额外信息,请告诉我,我不知道该提供什么。
【问题讨论】:
在我的例子中,我试图启动 apache 服务器,而我的 nginx 服务器已经在运行并监听端口 80。所以我做了service nginx stop
然后service apache2 start
。
@aderchox 你救了我,伙计!它对我有用。
【参考方案1】:
检查这些:
检查端口 80 是否被任何其他进程使用 – “netstat -o 从命令行关闭 IIS:“net stop was /y”关闭 Skype 对我有用,因为它使用端口 8080
尝试编辑conf文件夹下的httpd文件,并编辑如下入口-更改监听端口**来自Listen 80
到
#Listen 12.34.56.78:80
Listen 8080
【讨论】:
net stop was /y
在 Windows 10 上不再工作。在这里您可以看到如何关闭 IIS 以避免此问题:superuser.com/questions/1377068/…【参考方案2】:
试试这个:
sudo netstat -tulpn | grep :80
就我而言,我可以看到:
tcp6 0 0 :::80 ::: LISTEN 2604/docker-proxy*
然后我可以终止该进程:
kill 2604
然后成功重启Apache。
【讨论】:
【参考方案3】:在 httpd.conf 中应该有一个类似“Listen 80”的条目。有时默认端口 80 被其他应用程序占用(例如,我记得 Skype 曾经使用该端口)。其他或多或少使用的标准端口是 8000 和 8080,但如果您只是在本地播放,通常可以将其设置为您想要的任何端口。更多信息可以在official documentation获取。
【讨论】:
【参考方案4】:这对我来说太复杂了。 我输入了
sudo apt remove --purge apache2
sudo apt install apache2
然后我不得不更改 /var/www/html 中文件、目录本身和子目录的权限。 默认情况下它们是 -rw--------
sudo chmod 755 *
我越是试图解决问题,我似乎遇到的问题就越多。编写这个软件的人知道他们在做什么,而且他们知道的肯定比我多得多。
【讨论】:
以上是关于Apache Server Noob:没有可用的监听套接字的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Windows Server 2008 R2 上启动 Apache