PHP脚本运行两次

时间:2013-11-04 03:16:09

标签: php apache .htaccess xampp

好的,我有一个奇怪的问题。我有一个本地XAMPP运行并运行丙烯酸DNS代理。当我测试一些代码时,我注意到它运行了两次脚本。这就是我得到的。

的index.php

<?php
$myFile = "test.txt";
$fh = fopen($myFile, 'a') or die("can't open file");
$stringData = "1\n";
fwrite($fh, $stringData);
fclose($fh);
?>

的.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

AcrylicHosts.txt

127.0.0.1 test.com
127.0.0.1 *.test.com

虚拟文件

<VirtualHost *:80>
    DocumentRoot /www/test
    ServerName test.com
    ServerAlias *.test.com
</VirtualHost>

<VirtualHost *:443>
    DocumentRoot /www/test
    ServerName test.com
    ServerAlias *.test.com
    SSLEngine On
    SSLOptions +StrictRequire
    SSLEngine on
    SSLCertificateFile conf/ssl.crt/server.crt
    SSLCertificateKeyFile conf/ssl.key/server.key
    SSLProtocol TLSv1
</VirtualHost>

如果你去 test.com ,text.txt输出是“ 1 \ n 1 \ n

但是如果你去 www.test.com ,text.txt输出是“ 1 \ n

任何人都知道如何让它停止运行两次?

修改

这些是我正在使用的版本:

Apache 2.4.4
MySQL 5.5.32
PHP 5.4.19

1 个答案:

答案 0 :(得分:7)

看起来是因为chrome正在寻找favicon.ico(导致404)而我的.htaccess文件将所有404指向index.php文件,该文件再次执行代码。