Apache と PHP 5 を実行している 1 つの Linux サーバーには、個別のログ ファイルを持つ複数の仮想ホストがあります。error_log
仮想ホスト間で php を分離することはできないようです。
でこの設定をオーバーライドしても<Location>
、httpd.conf
何も起こらないようです。
error_logs
仮想ホストごとに個別のphpを持つ方法はありますか?
Apache と PHP 5 を実行している 1 つの Linux サーバーには、個別のログ ファイルを持つ複数の仮想ホストがあります。error_log
仮想ホスト間で php を分離することはできないようです。
でこの設定をオーバーライドしても<Location>
、httpd.conf
何も起こらないようです。
error_logs
仮想ホストごとに個別のphpを持つ方法はありますか?
誰かが見に来たら、次のようになります。
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/domains/example.com/html
ErrorLog /var/www/domains/example.com/apache.error.log
CustomLog /var/www/domains/example.com/apache.access.log common
php_flag log_errors on
php_flag display_errors on
php_value error_reporting 2147483647
php_value error_log /var/www/domains/example.com/php.error.log
</VirtualHost>
がオンになっているため、これは開発専用です。display_error
Apache エラー ログは PHP エラー ログとは別のものであることがわかります。良いものがありphp.error.log
ます。
error_reporting
キーについては、こちらをご覧ください http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting
Apache ( PHP ではなく) ログを設定するには、これを行う最も簡単な方法は次のようにすることです。
<VirtualHost IP:Port>
# Stuff,
# More Stuff,
ErrorLog /path/where/you/want/the/error.log
</VirtualHost>
先頭に「/」がない場合は、相対的であると見なされます。
私は通常、これを.htaccess
ファイルまたはvhost.conf
作業中のドメインで指定するだけです。これらのファイルの1つにこれを追加します。
php_admin_value error_log "/var/www/vhosts/example.com/error_log"
error_log()のデフォルトの動作は、Apacheエラーログに出力することです。これが発生しない場合は、php.iniの設定でerror_logディレクティブを確認してください。現在の仮想ホストにApacheログファイルを使用するには、設定を解除したままにします。
エラーが によって傍受されるため、自分のものの行き先に を設定error_log
しないでください。代わりに、ログ用にプロジェクト フォルダーに を作成し、 を実行します。これは、ファイルと仮想ホストの両方に当てはまります。こちらも必ず装着してくださいsyslog
eg /var/log/apache2
ErrorLog
subdir
php_value
error_log "/path/to/project/logs"
.htaccess
php_flag
log_errors
php_value error_log '/path/to/php_error_log
を VirtualHost 構成に追加してみてください。
php_value error_log "/var/log/httpd/vhost_php_error_log"
それは私にとってはうまくいきますが、ログファイルの許可を変更する必要があります.
または Apache はログをそのerror_log
.
はい、試すことができます。
php_value error_log "/var/log/php_log"
または、ユーザーがログを記録したい場合は、スクリプトの最初に.htaccess
使用することができます。ini_set()
もう 1 つのオプションは、スクリプトをスクリプトphp.ini
のあるフォルダにデフォルト設定してから、ユーザー/ホストのルート フォルダに移動し、次にサーバーのルートに移動するなどです。これにより、ホストは独自のphp.ini
値と独自のerror_log
場所を追加できます。
My Apache had something like this in httpd.conf. Just change the ErrorLog and CustomLog settings
<VirtualHost myvhost:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /opt/web
ServerName myvhost
ErrorLog logs/myvhost-error_log
CustomLog logs/myvhost-access_log common
</VirtualHost>
あなたが試すことができます:
<VirtualHost myvhost:80>
php_value error_log "/var/log/httpd/vhost_php_error_log"
</Virtual Host>
しかし、うまくいくかどうかはわかりません。サイトで試してみましたが、成功しませんでした。