首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AH00072: make_sock:无法绑定到地址0.0.0.0:8080

AH00072: make_sock:无法绑定到地址0.0.0.0:8080
EN

Stack Overflow用户
提问于 2020-11-19 12:49:40
回答 4查看 13.2K关注 0票数 11

在上,我和Apache有个问题。在操作系统更新之后,Apache (使用Brew)不再工作了。因此,我决定卸载httpd公式。然后测试了Apache的预装版本,并进行了测试。

  1. 所以我已经停止了预装的Apache sudo apachectl stop
  2. 卸载发射器sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null
  3. 更新了国产
    • brew update
    • brew doctor
    • brew upgrade

  4. 再次安装httpd brew install httpd (成功安装)
  5. 启动httpd sudo brew services start httpd

但是,检查状态sudo brew services list,我可以看到httpd服务具有状态error。当我尝试使用sudo apachectl start启动apache时,我会收到以下错误:

代码语言:javascript
复制
(48)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:8080
no listening sockets available, shutting down
AH00015: Unable to open logs

我已经检查过了,在8080端口lsof -i TCP:8080上是否还有别的东西在运行,但事实并非如此。

我检查了使用了哪个Apache (which apachectl),它似乎是正确的(/usr/local/bin/apachectl)

无论我试图使用哪个端口,始终存在一个错误,即地址已经在使用中。

有人知道如何解决这个问题吗?

EN

回答 4

Stack Overflow用户

发布于 2020-11-19 22:04:09

我也面临着同样的问题。到INADDR_ANY (0.0.0.0)的绑定似乎失败了。

为了避免绑定错误,我在/usr/local/etc/httpd/httpd.conf中修改了以下行:

代码语言:javascript
复制
Listen 8080

至:

代码语言:javascript
复制
Listen 127.0.0.1:8080

之后,我可以在没有绑定错误的情况下启动apache,使用以下命令:

代码语言:javascript
复制
sudo apachectl -k start
票数 14
EN

Stack Overflow用户

发布于 2020-12-13 01:24:41

我也遇到了同样的问题,但需要在端口80上运行apache。首先,我让它使用上面@FrankStappers的解决方案,在8080上使用:

代码语言:javascript
复制
Listen 127.0.0.1:8080
ServerName localhost:8080

接下来,我尝试在Listen和ServerName指令中将端口更改为80。“重新启动”给我留下了以下错误:

代码语言:javascript
复制
(13)Permission denied: AH00072: make_sock: could not bind to address 127.0.0.1:80
no listening sockets available, shutting down
AH00015: Unable to open logs

最后,按照以下方法更改Listen和ServerName:

代码语言:javascript
复制
Listen 0.0.0.0:80
ServerName localhost

解决方案记录在故障排除https://getgrav.org/blog/macos-bigsur-apache-multiple-php-versions的非苏丹httpd服务启动部分中。

票数 2
EN

Stack Overflow用户

发布于 2021-03-16 16:04:39

我的解决方案:

  1. brew services stop httpd
  2. 编辑您的httpd.conf可能位于/usr/local/etc/httpd/httpd.conf
代码语言:javascript
复制
Listen 80
ServerName localhost
  1. 确保没有其他带有此键的行,并保存文件。
  2. brew services start httpd
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64912014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档