2

ログクラスを作成しました。すべて正常に機能し、メソッド「add」はデータをX.logに追加します。問題は、htaccessをオンにすると、file_put_contentsが2行(1行ではない)を書き込んだことです。

基本的に、私はクラスなしで、index + htaccessにfile_put_contentsを書き込むだけで、ログを複製しようとしました。

問題は、htaccessルーティングが2回発生しているように見えます。

これは最小限のコードです:

index.php:

DEFINE('BASE_PATH',dirname(__FILE__));
DEFINE('DS',DIRECTORY_SEPARATOR);
DEFINE( 'LOG_PATH' , BASE_PATH . DS . "var" . DS . "log" . DS );
file_put_contents(LOG_PATH."1.log", "hola".PHP_EOL, FILE_APPEND | LOCK_EX);
die();

.htaccessコード:

Options +FollowSymLinks
IndexIgnore */*
DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine on
    RewriteCond %{REQUEST_URI} !^/(var|skin|js)/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php [L]
</IfModule>

手伝ってくれてありがとう!。

4

2 に答える 2

4

ブラウザがfavicon.icoをリクエストします。そして、おそらくあなたはそれを持っていないでしょう-それでリクエストはに書き直されているindex.phpので、あなたは複数のレコードを追加しています。

access.logを見て、要求された実際のURLを確認してください。

于 2012-08-15T01:28:33.820 に答える
0

zerkmsに感謝します、それは正しいです、問題はファビコンでした。誰かがそれを必要とするならば、私はこの条件を.htaccessに追加しました:

.htaccess

RewriteCond %{REQUEST_URI} !/favicon\.ico$
RewriteRule .* index.php [L]

再びzerkmsに感謝します。

于 2012-08-16T06:46:04.237 に答える