【发布时间】:2011-02-13 03:04:44
【问题描述】:
我很少在 Windows 机器上使用 Apache/PHP 进行开发,因此我选择将 apache 作为控制台进程而不是服务运行。如果可以将错误记录到控制台窗口而不是日志文件,那就太好了,这样我就可以立即看到它们。这可以以某种方式完成吗? apache似乎没有内置这样的功能,我也找不到可以做到这一点的mod。
【问题讨论】:
标签: apache console apache2 logging
我很少在 Windows 机器上使用 Apache/PHP 进行开发,因此我选择将 apache 作为控制台进程而不是服务运行。如果可以将错误记录到控制台窗口而不是日志文件,那就太好了,这样我就可以立即看到它们。这可以以某种方式完成吗? apache似乎没有内置这样的功能,我也找不到可以做到这一点的mod。
【问题讨论】:
标签: apache console apache2 logging
【讨论】:
只是想用一个可能困扰很多人的答案来更新这个问题。
场景:
docker run <container_id> 的输出显示日志docker就不多说了,我跑的相关命令同时运行apache和显示日志:
/usr/sbin/apache2 & tail -f /var/log/apache2/*
您可以根据需要进行修改(我使用的是debian:jessie 图像)。正如上面评论中提到的,您已经获得了 Windows 的 tail,我相信 & 运算符也应该在 Windows 中工作(不确定这一点)。
此命令将阻止您的外壳并继续从您的日志中发芽...
希望这对某人有所帮助
【讨论】:
我不确定 apache 是否会让你这样做,但你是否尝试过使用:
tail -f /the/apache/logfile.log?
这应该可以让您实时查看日志(假设您没有缓冲它或其他任何东西)
编辑:
由于这是一台 Windows 机器,因此可以使用 TextPad 完成相同的操作(只需让它在更改时自动重新加载日志文件)。它将与tail 功能相同
【讨论】:
tail 也可以为此编译。好吧,这是一种选择,尽管我更喜欢只有一个控制台窗口。嗯......然后我可能再次将其设置为服务,然后创建一个批处理文件来启动它,然后是tail,然后停止服务。或者只是用 C# 编写我自己的启动器/读取器/停止器程序,这很容易。仍然 - 也许有更优雅的解决方案可用?
对于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.
【讨论】: