Alterando o diretório de arquivos de log do Apache 2.4.x no Centos 7

1

Atualmente, meus arquivos de log estão disponíveis em '/ var / log / httpd /. Como tenho uma quantidade limitada de minha partição raiz, os logs estão excedendo o limite e fazendo com que o sistema fique preso.

Eu quero alterar o diretório de log do apache para outro volume montado.

Eu não mudei & encontrou alguma coisa sobre o diretório do arquivo de log no arquivo de configuração, qual seria a maneira mais fácil de alterar o diretório /var/log/http/* para /someRandomVolume/httpLogFolder/*

Isto é o que eu tenho sobre o log no meu arquivo de configuração;

#
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog "logs/error_log"

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn

<IfModule log_config_module>
    #
    # The following directives define some format nicknames for use with
    # a CustomLog directive (see below).
    #
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      # You need to enable mod_logio.c to use %I and %O
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    #
    # The location and format of the access logfile (Common Logfile Format).
    # If you do not define any access logfiles within a <VirtualHost>
    # container, they will be logged here.  Contrariwise, if you *do*
    # define per-<VirtualHost> access logfiles, transactions will be
    # logged therein and *not* in this file.
    #
    #CustomLog "logs/access_log" common

    #
    # If you prefer a logfile with access, agent, and referer information
    # (Combined Logfile Format) you can use the following directive.
    #
    CustomLog "logs/access_log" combined
</IfModule>
    
por Lunatic Fnatic 27.09.2017 / 10:07

1 resposta

2

No RHEL / CentOS, o local padrão dos arquivos de log é relativo a partir do ServerRoot diretório base /etc/httpd/ e normalmente um link simbólico de /etc/httpd/logs para /var/log/httpd .

Se você quiser usar um diretório diferente, simplesmente mova /var/log/httpd e atualize esse link simbólico.

Como alternativa, como @TomTomTom sugeriu, use caminhos absolutos nas diretivas CustomLog e ErrorLog .

Se você tiver o SELinux ativado, certifique-se de que o contexto correto seja definido / mantido para esse novo diretório.

    
por 27.09.2017 / 11:40