htaccess在提供完全不同的脚本之前重写服务器上的执行脚本

时间:2012-04-09 20:58:59

标签: php apache .htaccess

我的.htaccess for my / mobile目录:

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

我的索引中有一个mysql查询,它基本上增加了页面计数,当我打开m.mysite.net/style.css(它是/mobile/style.css)时,它在服务器上执行index.php但仍然提供style.css没有问题...如果style.css是一个可定位的文件,为什么它会执行index.php?

以下是目录的apache配置:

<VirtualHost *:80>
     DocumentRoot /var/www/mobile
     ServerName m.mysite.com
     ServerAlias m.mysite.net
</VirtualHost>

如何避免执行任何脚本并只提供绝对文件? 我需要改变什么?

1 个答案:

答案 0 :(得分:0)

您的.htaccess似乎是正确的。应该在没有index.php的情况下传递style.css。

但是。您可以在css中包含图像,例如

background: url(/img/still/not/exists.png)

此图片可能丢失,您有index.php调用。

无论如何,这当然是猜测:)