可以让 Apache httpd 在 Windows 下将错误记录到控制台而不是日志文件吗?

问题描述 投票:0回答:5

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

apache console apache2 logging
5个回答
10
投票

是的,可以。

使用以下指令编辑

httpd.conf
文件,将错误日志的输出通过管道发送到控制台窗口:

ErrorLog "|more"
    

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

场景:

    运行 apache2 docker 容器
  • 想要输出
  • docker run <container_id>
    来显示日志
不用过多谈论docker,我运行相关命令来运行apache并同时显示日志:

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

您可以根据需要修改它(我正在使用

debian:jessie

图像)。正如上面评论中提到的,您已经获得了 Windows 的 
tail
,我相信 
&
 运算符也应该在 Windows 中工作(对此不确定)。

此命令将阻止您的 shell 并不断从您的日志中生成内容...

希望这对某人有帮助


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

tail -f /the/apache/logfile.log

这应该让你实时观看日志(假设你没有缓冲它或任何东西)

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

相同
    


0
投票
对于 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.
    

0
投票
要使 Apache httpd 将错误记录到 Windows 上的控制台,请将任一行放入

httpd.conf

:

ErrorLog "|C:/Windows/System32/more.com"

ErrorLog "|con"
它们似乎与 2024 年 7 月 22 日在 Windows 10 上使用 

cmd

httpd-2.4.62-240718-win64-VS17. 的工作方式相同。

第一个选项是由

François Breton评论中建议的。 第二个选项是 ChatJippity 建议的,尽管我可能应该已经知道了。

© www.soinside.com 2019 - 2024. All rights reserved.