8

我昨天刚刚用 Mavericks 更新了我的 OSX,现在我在使用 apache 和 Jetty 时遇到了错误。它曾经将我的 example.com 域直接映射到 localhost。

现在似乎无法运行我的应用程序服务器,我必须明确指定端口才能访问我的服务器。(例如 example.com:8080)

当我在命令下运行时。

 sudo apachectl -e debug

我会得到

 [debug] mod_so.c(246): loaded module jk_module
(48)Address already in use: make_sock: could not bind to address [::]:80
(48)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down

我运行了许多 diff 命令来杀死所有 httpd 进程并找到正在侦听该端口的端口。

ex. sudo lsof -i :80

httpd      946          root    5u  IPv6 0xe0c8ad50898bcf0f      0t0  TCP *:http (LISTEN)
httpd      947          _www    5u  IPv6 0xe0c8ad50898bcf0f      0t0  TCP *:http (LISTEN)
httpd      949          _www    5u  IPv6 0xe0c8ad50898bcf0f      0t0  TCP *:http (LISTEN)
httpd      954          _www    5u  IPv6 0xe0c8ad50898bcf0f      0t0  TCP *:http (LISTEN)
Google    1633 jignesh.sheth   59u  IPv4 0xe0c8ad508597efaf      0t0  TCP example.com:53742->stackoverflow.com:http (ESTABLISHED)
Google    1633 jignesh.sheth  189u  IPv4 0xe0c8ad5082027faf      0t0  TCP example.com:53725->stackoverflow.com:http (ESTABLISHED)

知道我在做什么错吗?

4

3 回答 3

4

我也有同样的情况,我从我的配置文件中删除了“Listern 80”来解决这个问题。

于 2016-02-09T13:29:41.990 回答
3

我有同样的错误。/var/log/apache*/ 的 Apache 服务器的错误日志文件提到“地址已在使用中:make_sock:无法绑定到地址 0.0.0.0:443”。使用“sudo lsof -i :”命令查找在端口上运行的进程来解决它。杀死所有进程并重新运行 sudo apachectl start。apache 服务器应该开始运行。

这可能会有所帮助:https ://superuser.com/questions/479146/macports-apache2-could-not-bind-to-address/479147#479147?newreg=95099c6a74724da49640329d4ee400f2

于 2016-02-04T20:40:38.023 回答
2

我有同样的问题。

我所做的是将“username.conf”的权限从用户目录更改为 644,就像本教程中一样

http://www.coolestguidesontheplanet.com/downtown/get-apache-mysql-php-and-phpmyadmin-working-osx-109-mavericks

于 2013-10-27T20:24:56.637 回答