首页 > 网站 > 建站经验 > 正文

ecshop在子目录空间下伪静态失效下的规则

2024-04-25 20:42:07
字体:
来源:转载
供稿:网友

ecshop在主目录网站根目录下使用.htaccess规则可用,但是若是godaddy等主机的子目录下使用默认的规则,网站伪静态直接失效,A5源码针对该问题,对子目录下规则进行了修正,代码如下:

<FilesMatch "/.(bak|inc|lib|sh|tpl|lbi|dwt)$">

order deny,allow

deny from all

</FilesMatch>

RewriteEngine On

RewriteBase /

# direct one-word access

RewriteRule ^index/.html$ index/.php [L]

RewriteRule ^category$ index/.php [L]

# access any object by its numeric identifier

RewriteRule ^feed-c([0-9]+)/.xml$ feed/.php/?cat=$1 [L]

RewriteRule ^feed-b([0-9]+)/.xml$ feed/.php/?brand=$1 [L]

RewriteRule ^feed-type([^-]+)/.xml$ feed/.php/?type=$1 [L]

RewriteRule ^feed/.xml$ feed/.php [L]

RewriteRule ^category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)/.html$ category/.php/?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5&page=$6&sort=$7&order=$8 [QSA,L]

RewriteRule ^category-([0-9]+)-b([0-9]+)-min([0-9]+)-max([0-9]+)-attr([^-]*)(.*)/.html$ category/.php/?id=$1&brand=$2&price_min=$3&price_max=$4&filter_attr=$5 [QSA,L]

RewriteRule ^category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)/.html$ category/.php/?id=$1&brand=$2&page=$3&sort=$4&order=$5 [QSA,L]

RewriteRule ^category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)/.html$ category/.php/?id=$1&brand=$2&page=$3 [QSA,L]

RewriteRule ^category-([0-9]+)-b([0-9]+)(.*)/.html$ category/.php/?id=$1&brand=$2 [QSA,L]

RewriteRule ^category-([0-9]+)(.*)/.html$ category/.php/?id=$1 [QSA,L]

RewriteRule ^goods-([0-9]+)(.*)/.html$ goods/.php/?id=$1 [QSA,L]

RewriteRule ^article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)/.html$ article_cat/.php/?id=$1&page=$2&sort=$3&order=$4 [QSA,L]

RewriteRule ^article_cat-([0-9]+)-([0-9]+)(.*)/.html$ article_cat/.php/?id=$1&page=$2 [QSA,L]

RewriteRule ^article_cat-([0-9]+)(.*)/.html$ article_cat/.php/?id=$1 [QSA,L]

RewriteRule ^article-([0-9]+)(.*)/.html$ article/.php/?id=$1 [QSA,L]

RewriteRule ^brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)/.html brand/.php/?id=$1&cat=$2&page=$3&sort=$4&order=$5 [QSA,L]

RewriteRule ^brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)/.html brand/.php/?id=$1&cat=$2&page=$3 [QSA,L]

RewriteRule ^brand-([0-9]+)-c([0-9]+)(.*)/.html brand/.php/?id=$1&cat=$2 [QSA,L]

RewriteRule ^brand-([0-9]+)(.*)/.html brand/.php/?id=$1 [QSA,L]

RewriteRule ^tag-(.*)/.html search/.php/?keywords=$1 [QSA,L]

RewriteRule ^snatch-([0-9]+)/.html$ snatch/.php/?id=$1 [QSA,L]

RewriteRule ^group_buy-([0-9]+)/.html$ group_buy/.php/?act=view&id=$1 [QSA,L]

RewriteRule ^auction-([0-9]+)/.html$ auction/.php/?act=view&id=$1 [QSA,L]

RewriteRule ^exchange-id([0-9]+)(.*)/.html$ exchange/.php/?id=$1&act=view [QSA,L]

RewriteRule ^exchange-([0-9]+)-min([0-9]+)-max([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)/.html$ exchange/.php/?cat_id=$1&integral_min=$2&integral_max=$3&page=$4&sort=$5&order=$6 [QSA,L]

RewriteRule ^exchange-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)/.html$ exchange/.php/?cat_id=$1&page=$2&sort=$3&order=$4 [QSA,L]

RewriteRule ^exchange-([0-9]+)-([0-9]+)(.*)/.html$ exchange/.php/?cat_id=$1&page=$2 [QSA,L]

RewriteRule ^exchange-([0-9]+)(.*)/.html$ exchange/.php/?cat_id=$1 [QSA,L]

直接复制以上代码保存为.htaccess 放到子目录下就可用。

希望本文所述对大家有所帮忙

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表