Apache不会在OSX上启动。 “httpd(pid 80)已经在运行”

时间:2015-10-01 02:13:52

标签: macos apache

上周我的本地Apache在error.log中没有消息停止工作......

检查system.log我看到了:

com.apple.xpd.launchd: (org.apache.httpd) Service only ran for 0 seconds. Pushing respawn out every 10 seconds.

经过一些谷歌搜索后,我跑了sudo /usr/sbin/httpd -k start -e Debug -E /dev/stdout

这给了我一个已加载模块的列表,后面跟着一条关于httpd已经运行的消息:

...
[Wed Sep 30 22:01:04.344972 2015] [so:debug] [pid 8657] mod_so.c(266): AH01575: loaded module alias_module from /usr/libexec/apache2/mod_alias.so
[Wed Sep 30 22:01:04.345183 2015] [so:debug] [pid 8657] mod_so.c(266): AH01575: loaded module hfs_apple_module from /usr/libexec/apache2/mod_hfs_apple.so
httpd (pid 80) already running

即使我第一次运行sudo apachectl stop

,我也会得到相同的结果

运行ps aux | grep [h]ttpd表示httpd未运行。

帮助表示赞赏!

2 个答案:

答案 0 :(得分:1)

您遇到的问题可能是 Skype (如果已安装)或系统上运行的使用默认端口80的类似应用程序。)
如果您的系统上运行了Skype,则以下步骤可能会解决您的问题

  1. 转到 Skype -> Tools -> Options -> Advance Settings -> Connections

  2. 取消选中“使用端口80和443进行其他传入连接 “

  3. enter image description here

    1. 保存设置并重新启动Apache和Skype
    2. 我希望这可以解决您的问题,如果它不起作用,请告诉我们

      注意:我已回答有关Windows机器的问题,但我相信如果skype是问题,它也可以在其他平台上运行。

      干杯,
      ?

答案 1 :(得分:0)

我知道这个问题已经有 5 年了,但这就是我解决我的实例的方法。

  1. 首先我找到了我的日志文件。在我所做的 apache 配置文件夹中 -

    <块引用>

    grep "ErrorLog" httpd.conf

  2. 我注意到以下错误: pid 文件 /usr/local/var/run/httpd/httpd.pid 被覆盖 -- 之前运行的 Apache 不正常关闭?

所以我删除了 httpd.pid 并重新启动了 apache。 这为我解决了这个问题。

这可能不是同一个问题,但错误日志对于诊断问题非常有用,