当前位置: 首页 > 编程笔记 >

在Linux系统上查看Apache服务器的错误日志

边健
2023-03-14
本文向大家介绍在Linux系统上查看Apache服务器的错误日志,包括了在Linux系统上查看Apache服务器的错误日志的使用技巧和注意事项,需要的朋友参考一下

错误日志和访问日志文件为系统管理员提供了有用的信息,比如,为 Web 服务器排障,保护系统不受各种各样的恶意活动侵犯,或者只是进行各种各样的分析以监控 HTTP 服务器。根据你 Web 服务器配置的不同,其错误/访问日志可能放在你系统中不同位置。

本文可以帮助你找到Linux上的Apache错误日志。
Debian,Ubuntu或Linux Mint上的Apache错误日志位置
默认的错误日志

在基于Debian的Linux上,系统范围的Apache错误日志默认位置是/var/log/apache2/error.log。默认位置可以通过编辑Apache的配置文件进行修改。
自定义的错误日志

要找到自定义的错误日志位置,请用文本编辑器打开 /etc/apache2/apache2.conf,然后查找以 ErrorLog 开头的行,该行指定了自定义的 Apache 错误日志文件的位置。例如,在未经修改的 Apache 配置文件中可以找到以下行:

  ErrorLog ${APACHE_LOG_DIR}/error.log

在本例中,该位置使用 APACHELOGDIR 环境变量进行配置,该变量在 /etc/apache2/envvars 中已被定义。

  export APACHE_LOG_DIR=/var/log/apache2$SUFFIX

在实际情况中, ErrorLog 可能会指向你 Linux 系统中任意路径。
使用虚拟主机自定义的错误日志

如果在 Apache Web 服务器中使用了虚拟主机, ErrorLog 指令可能会在虚拟主机容器内指定,在这种情况下,上面所说的系统范围的错误日志位置将被忽略。

启用了虚拟主机后,各个虚拟主机可以定义其自身的自定义错误日志位置。要找出某个特定虚拟主机的错误日志位置,你可以打开 /etc/apache2/sites-enabled/.conf,然后查找 ErrorLog 指令,该指令会显示站点指定的错误日志文件。
CentOS,Fedora或RHEL上的Apache错误日志位置
默认的错误日志

在基于 Red Hat 的Linux中,系统范围的 Apache 错误日志文件默认被放置在/var/log/httpd/error_log。该默认位置可以通过修改 Apache 配置文件进行自定义。
自定义的错误日志

要找出 Apache 错误日志的自定义位置,请用文本编辑器打开 /etc/httpd/conf/httpd.conf,然后查找 ServerRoot,该参数显示了 Apache Web 服务器目录树的顶层,日志文件和配置都位于该目录树中。例如:

  ServerRoot "/etc/httpd"

现在,查找 ErrorLog 开头的行,该行指出了 Apache Web 服务器将错误日志写到了哪里去。注意,指定的位置是 ServerRoot 值的相对位置。例如:

  ErrorLog "log/error_log"

结合上面的两个指令,可以获得完整的错误日志路径,默认情况下该路径就是 /etc/httpd/logs/errorlog。在全新安装的Apache中,这是一个到 /var/log/httpd/errorlog 的符号链接。

在实际情况中, ErrorLog 可能指向你 Linux 系统中的任意位置。
使用虚拟主机自定义的错误日志

如果你启用了虚拟主机,你可以通过检查 /etc/httpd/conf/httpd.conf(或其它任何定义了虚拟主机的文件)来找到各个虚拟主机的错误日志位置。在独立的虚拟主机部分查找 ErrorLog。如,在下面的虚拟主机部分,错误日志的位置是 /var/www/xmodulo.com/logs/error_log。

  <VirtualHost *:80>
    ServerAdmin webmaster@xmodulo.com
    DocumentRoot /var/www/xmodulo.com/public_html
    ServerName www.xmodulo.com
    ServerAlias xmodulo.com
    ErrorLog /var/www/xmodulo.com/logs/error_log
    CustomLog /var/www/xmodulo.com/logs/access_log
  <VirtualHost>

 类似资料:
  • 主要内容:服务的分类,查询已经安装的服务和区分服务我们知道,系统服务是在后台运行的应用程序,并且可以提供一些本地系统或网络的功能。我们把这些应用程序称作 服务,也就是 Service。不过,我们有时会看到 Daemon 的叫法,Daemon 的英文原意是"守护神",在这里是"守护进程"的意思。 那么,什么是守护进程?它和服务又有什么关系呢? 守护进程就是为了实现服务、功能的进程。比如,我们的 apache 服务就是服务(Service),它是用来

  • 本文向大家介绍在Linux和Windows系统上安装Nginx服务器的教程,包括了在Linux和Windows系统上安装Nginx服务器的教程的使用技巧和注意事项,需要的朋友参考一下 1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RPM 包版本较低。如果需要更新版本,可以使用官方制作的 rpm 包,或者使用源码包

  • 问题内容: 我需要将Silverlight 2.0应用程序部署到Apache服务器,但是它在Linux下。 这可能吗?我的意思是,我是否需要在服务器中安装.Net 3.5和可以执行Asp.Net的网站? 谢谢您的帮助… 问题答案: 如果apache服务器只是在没有任何ASPX页面的情况下提供Silverlight应用程序,那么您应该没问题。Silverlight是一种客户端技术,因此它在服务器上不

  • 我已经安装了xampp服务器,但当我单击mysql管理按钮时,它显示一个错误: 另外,我将Apache端口80更改为另一个数字,但Apache没有启动,它显示如下: 正在尝试启动Apache服务...6:26:01 PM[Apache]检测到状态更改:正在运行6:26:05 PM[Apache]检测到状态更改:已停止6:26:05 PM[Apache]错误:Apache意外关闭。6:26:05 P

  • 代码如下 @WebService公共接口CifService{ } @WebService(endpoint Interface="service.service.CifService", Target etNamespace="http://fs.service/", serviceName="FsService", portName="FsPort")公共类CifServiceImpl实现Ci

  • 问题内容: 我使用的是Jenkins Active Directory插件,经过几次尝试后无法登录。错误消息显示: 在哪里可以找到服务器控制台输出(在本地文件系统上)? 我认为可以从Jenkins网页上访问它,但是由于我无法登录,因此没有太大用处。我 可以 登录到安装了Jenkins的(Windows)服务器- 它们在服务器上的什么位置? 问题答案: Jenkins无法访问您要查找的控制台输出。如