IndexIgnore让指定file排除在显示列表之外,也就是忽略显示,也就是不显示,file可以是文件全名,或是shell样式的通配符。
RewriteCond
%{REQUEST_FILENAME}
!-f,这句话的意思是:
如果文件存在,就直接访问文件,不进行下面的RewriteRule.
%{REQUEST_FILENAME}
请求的文件名
!-f
不是文件或不存在
!-d
不是目录或不存在
[L]
这是最后一个匹配项,不再往下匹配
一、Apache环境下,使用 .htaccess规则开启伪静态:1、首要条件:加载Rewrite模块:
在conf目录下httpd.conf中找到
#LoadModule rewrite_module modules/mod_rewrite.so
这句,去掉前边的注释符号“#”,或添加这句。
允许在任何目录中使用“.htaccess”文件,将“AllowOverride”改成“All”(默认为“None”):
AllowOverride All
2、然后在程序根目录下,新建一个.htacess文件(复制以下代码)。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule . - [NC,L]
RewriteRule . index.php [NC,L]
3.修改config/config.php
define('WITH_REWRITE',true)//默认是false
二、Nginx平台开启伪静态:
1.修改 nginx.conf文件,添加如下代码:
if ($request_uri ~ (.+?\.php)(|/.+)$ ){
break
}
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last
}
一台服务器上有多个网站时,最好给指定的虚拟主机(vhost)单独添加代码,以免影响其它非ecstore站使用
2、修改config/config.php
define('WITH_REWRITE',true)//默认是false
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)