RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?id=$1
</IfModule>
很多人问过RewriteCond %{REQUEST_FILENAME} 是什么意思
RewriteCond %{REQUEST_FILENAME} !-f
代表的意思就是
如果文件存在,就直接访问文件,不进行下面的RewriteRule.
RewriteCond %{REQUEST_FILENAME} !-d#如果目录存在就直接访问目录不进行RewriteRule
同理:
RewriteCond %{REQUEST_URI} !^.*(.css|.js|.gif|.png|.jpg|.jpeg)$ #如果是这些后缀的文件,就直接访问文件,不进行Rewrite
其中,
%{REQUEST_FILENAME}表示请求的文件名 !-f不是一个文件 !-d不是一个目录 [L] 相当于link [R]相当与redirect [NC]不区分大小写。