2017-02-04 4 views
0

大丈夫です。.htaccessにPHPログの配置を設定する - サブドメインの変数を使用しますか?

# enable PHP error logging 
php_flag log_errors on 
php_value error_log logs/php_errors.log 

働くが、私は、エラー・ログアクティブになっているサブドメインに基づいて命名されるのを希望(別のサブドメインが同じファイルを使用し、それゆえ私はちょうどすることはできません。私は私の.htaccessでこれを持っていますロードされる特定のファイルに基づいて位置を区別する)。

私はこれを実行しようとしました(しかし、それは動作しません):

# enable PHP error logging 
php_flag log_errors on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{HTTP_HOST}  !^www 
RewriteCond %{HTTP_HOST}   ^([^\.]+)\.([^\.]+)\.([^\.]+)$ 
php_value error_log logs/php_errors_$1.log 

それはちょうどフォルダ内のphp_errors_ます$ 1.logを返します。ですから、変数にその変数を代入し、その変数をファイル名に使用する方法はありますか?

+0

私は '$ 1' 'のRewriteRule' からのみアクセス可能であると信じています。 .. –

+0

ええ、私は考えました...私はちょうど似たようなものを書くための他の方法があるのだろうかと思っていました。 – junkfoodjunkie

+0

私はあなたが各サブドメインで.htaccessファイルを作成し、それを使ってerror_logを設定するのが一番良いと思います –

答えて

1

これは、周りの小さな作品です:

.htaccessファイル:

php_value auto_prepend_file "/home/path/public_html/domain/setLogFile.php" 

setLogFile.php:

<?php 

// Get subdomain 
$subdomain = array_shift((explode(".",$_SERVER['HTTP_HOST']))); 

// Set log file 
ini_set("log_errors", 1); 
ini_set("error_log", "/home/path/public_html/domain/logs/php_errors_" . $subdomain); 

?> 
+0

これはうまくいきますが、PHPを使用する代わりに、設定のために.htaccessを使用しようとしている点を無視しています...しかし、他の解決方法がない場合は、これを検討します。 – junkfoodjunkie

+0

同じディレクトリにすべてのサブドメインがある場合、.htaccessを使ってそれを行う方法はないと思います。 –

+0

私はこれを答えとして設定しました。それはうまく動作し、より複雑にするためにあまり効果がないからです。ヒントをありがとう! – junkfoodjunkie

関連する問題