【问题标题】:Can Apache httpd be made to log errors to console instead of log files under Windows?可以让 Apache httpd 将错误记录到控制台而不是 Windows 下的日志文件吗?
【发布时间】:2011-02-13 03:04:44
【问题描述】:

我很少在 Windows 机器上使用 Apache/PHP 进行开发,因此我选择将 apache 作为控制台进程而不是服务运行。如果可以将错误记录到控制台窗口而不是日志文件,那就太好了,这样我就可以立即看到它们。这可以以某种方式完成吗? apache似乎没有内置这样的功能,我也找不到可以做到这一点的mod。

【问题讨论】:

    标签: apache console apache2 logging


    【解决方案1】:

    可以。

    使用此指令将您的httpd.conf 文件编辑为pipe 将错误日志输出到您的控制台窗口:

    ErrorLog "|more"
    

    【讨论】:

    • 在我的 Windows 8 上不起作用。它给了我错误:(OS 2)系统找不到指定的文件。 : AH00089: 无法启动 Erro rLog 进程“更多”。 AH00015: 无法打开日志
    • 关于 Windows 解决方案的任何信息?
    • 无法启动 ErrorLog 进程“更多”。
    • 错误日志 "|C:/Windows/System32/more.com"
    【解决方案2】:

    只是想用一个可能困扰很多人的答案来更新这个问题。

    场景:

    • 运行 apache2 docker 容器
    • 希望docker run <container_id> 的输出显示日志

    docker就不多说了,我跑的相关命令同时运行apache和显示日志:

    /usr/sbin/apache2 & tail -f /var/log/apache2/*
    

    您可以根据需要进行修改(我使用的是debian:jessie 图像)。正如上面评论中提到的,您已经获得了 Windows 的 tail,我相信 & 运算符也应该在 Windows 中工作(不确定这一点)。

    此命令将阻止您的外壳并继续从您的日志中发芽...

    希望这对某人有所帮助

    【讨论】:

    • 我相信这将无法正常工作,因为当您尝试停止或终止此进程(或 docker 容器)时,它只会停止尾部进程,而不是 apache,然后它将继续运行并失败下次尝试启动容器时启动。
    【解决方案3】:

    我不确定 apache 是否会让你这样做,但你是否尝试过使用:

    tail -f /the/apache/logfile.log?

    这应该可以让您实时查看日志(假设您没有缓冲它或其他任何东西)

    编辑: 由于这是一台 Windows 机器,因此可以使用 TextPad 完成相同的操作(只需让它在更改时自动重新加载日志文件)。它将与tail 功能相同

    【讨论】:

    • 这是一台windows机器,我已经说过了。但我想tail 也可以为此编译。好吧,这是一种选择,尽管我更喜欢只有一个控制台窗口。嗯......然后我可能再次将其设置为服务,然后创建一个批处理文件来启动它,然后是tail,然后停止服务。或者只是用 C# 编写我自己的启动器/读取器/停止器程序,这很容易。仍然 - 也许有更优雅的解决方案可用?
    • 我喜欢这个建议,因为您可以在文件中显示错误并在控制台上显示。但是,是的,tail 是 *nix 而不是 Windows 的本机,虽然它可以在 Windows 中工作,我知道最简单的解决方案是 cygwin
    • 哇,我完全浏览了 Windows 部分 :(。我更新了我的答案以使用 TextPad,它应该可以工作
    • @Flash84x - 实际上一个快速的谷歌搜索揭示了很多本机 Win32 的 tail 实现,包括微软自己的一些。 Cygwin 对我来说有点极端。 :P
    • @webdestroya - 有趣的想法。我自己使用的是 Notepad++,但它也有这个功能。
    【解决方案4】:

    对于windows你可以使用httpd.exe -X

    -X    Run httpd in debug mode. Only one worker will be started and the server will not detach from the console.
    

    【讨论】:

      猜你喜欢
      • 2017-03-26
      • 2016-04-24
      • 2020-02-12
      • 1970-01-01
      • 2015-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多