web-dev-qa-db-ja.com

すべてのアプリの個別のPHPエラーログ

Linux Apacheサーバーがあり、/etc/my_custom_php_error_log.logファイルで述べたように、PHPのエラーログはphp.iniになります。しかし、すべてのアプリケーションに対して個別にこのログを作成したいと思います。たとえば、AlphaとBravoという名前のこのサーバーに2つのアプリケーションを展開し、/var/www/html/Aplha/php_alpha.logのAlphaと/var/www/html/Bravo/php_bravo.logのBravoのエラーログを作成したい

これどうやってするの?

4
MikePappa

これは、さまざまなVirtualHostファイルで次のように行われます。

<VirtualHost *:80>

        ServerName ensignremake.app
        DocumentRoot /var/www/html/ensignremake/public/
        DirectoryIndex index.php

    <Directory />
         Options FollowSymLinks
         AllowOverride None
    </Directory>

        <Directory /var/www/html/ensignremake>
            AllowOverride All
            Require all granted
        </Directory>

        ErrorLog /path/where/you/want/the/error.log
        LogLevel warn
        CustomLog ${Apache_LOG_DIR}/access.log combined

        php_value error_log "/path/where/you/want/the/error.log"

</VirtualHost>
  1. 下のリンクで最も支持されている回答から、他のphp flagsを個々のアプリに設定できますが、phpでグローバルに既に設定されている場合は不要です。

  2. また、カスタムの場所にpermissionsも設定する必要があります。そうしないと、Apacheが独自のlog filesに書き込みます

ソース:

https://stackoverflow.com/questions/176/error-log-per-virtual-Host

3
George Udosen