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のエラーログを作成したい
これどうやってするの?
これは、さまざまな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>
下のリンクで最も支持されている回答から、他のphp flags
を個々のアプリに設定できますが、php
でグローバルに既に設定されている場合は不要です。
また、カスタムの場所にpermissions
も設定する必要があります。そうしないと、Apache
が独自のlog files
に書き込みます
ソース:
https://stackoverflow.com/questions/176/error-log-per-virtual-Host