%{REQUEST_FILENAME} !-f 和!-d只对下一条RewriteRule起作用。再往下的RewriteRule不管用。
-f 表示为文件
-d 表示为目录
! 表示非,取反的意思
RewriteCond %{REQUEST_FILENAME} !-f (如果不是文件,才会执行下一条RewriteRule)
RewriteCond %{REQUEST_FILENAME} !-d (如果不是目录,才会执行下一条RewriteRule)
切记,只生效下一条,再下一条就不管用了,再下一条则会以全局形式匹配,没有条件判断。