ecshop 伪静态设置

ecshop 伪静态设置,第1张

下面这个就是常见的问题ecshop伪静态设置方法:

1.服务器或虚拟主机要支持伪静态;

2.将.htaccess文件上传至网站的根目录;

3.在ecShop程序后台设置“伪静态”功能;

4.修改http.ini代码(下面灰色字体部分)。

[ISAPI_Rewrite]

# ECSHOP

RewriteRule /index.html /index.php

RewriteRule /default.html /index.php

RewriteRule /ecshop/feed.xml /ecshop/feed.php

#RewriteRule

/ecshop/category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$

/ecshop/category.php?id=$1&brand=$2&page=$3&sort=$4&order=$5

RewriteRule

^(.*)/category-([0-9]+)-b([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$

$1/category\.php\?id=$2&brand=$3&page=$4&sort=$5&order=$6

#RewriteRule /ecshop/category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)\.html$

/ecshop/category.php?id=$1&brand=$2&page=$3

RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)-([0-9]+)(.*)\.html$

$1/category\.php\?id=$2&brand=$3&page=$4

#RewriteRule /ecshop/category-([0-9]+)-b([0-9]+)(.*)\.html$

/ecshop/category.php?id=$1&brand=$2

RewriteRule ^(.*)/category-([0-9]+)-b([0-9]+)(.*)\.html$

$1/category\.php\?id=$2&brand=$3

#RewriteRule /ecshop/category-([0-9]+)(.*)\.html$ /ecshop/category.php?id=$1

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

#RewriteRule /ecshop/goods-([0-9]+)(.*)\.html$ /ecshop/goods.php?id=$1

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

#RewriteRule /ecshop/article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$

/ecshop/article_cat.php?id=$1&page=$2&sort=$3&order=$4

RewriteRule ^(.*)/article_cat-([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html$

$1/article_cat\.php\?id=$2&page=$3&sort=$4&order=$5

#RewriteRule /ecshop/article_cat-([0-9]+)-([0-9]+)(.*)\.html$

/ecshop/article_cat.php?id=$1&page=$2

RewriteRule ^(.*)/article_cat-([0-9]+)-([0-9]+)(.*)\.html$

$1/article_cat\.php\?id=$2&page=$3

#RewriteRule /ecshop/article_cat-([0-9]+)(.*)\.html$

/ecshop/article_cat.php?id=$1

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

#RewriteRule /ecshop/article-([0-9]+)(.*)\.html$ /ecshop/article.php?id=$1

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

#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)\.html

/ecshop/brand.php?id=$1&cat=$2&page=$3&sort=$4&order=$5

RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)-([0-9]+)-(.+)-([a-zA-Z]+)(.*)\.html

$1/brand\.php\?id=$2&cat=$3&page=$4&sort=$5&order=$6

#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)\.html

/ecshop/brand.php?id=$1&cat=$2&page=$3

RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)-([0-9]+)(.*)\.html

$1/brand\.php\?id=$2&cat=$3&page=$4

#RewriteRule /ecshop/brand-([0-9]+)-c([0-9]+)(.*)\.html

/ecshop/brand.php?id=$1&cat=$2

RewriteRule ^(.*)/brand-([0-9]+)-c([0-9]+)(.*)\.html

$1/brand\.php\?id=$2&cat=$3

#RewriteRule /ecshop/brand-([0-9]+)(.*)\.html /ecshop/brand.php?id=$1

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

所谓伪静态就是通过一定的技术手段,将原先一条不存在的URL地址映射到已存在的文件上,其目的是实现动态网页内容的静态化,提高搜索引擎收录率。

方法/步骤:

1、IIS 7.0以上服务器

微软IIS 7.0以上版本完全重写了IIS的内核结构,采用模块化的设计构架,URL重写也成为可选安装的模块之一。朝暮数据的全部虚拟主机都安装了URL重写模块,因此客户可以通过轻松的配置web.config文件来实现伪静态功能。

下面是实现第一段所述伪静态规则的web.config代码。

<?xml version="1.0" encoding="UTF-8"?><configuration>    <system.webServer>        <rewrite>            <rules>                <rule name="已导入的规则 1">                    <match url="product/([a-z]+)/([0-9]+)" ignoreCase="false" />                    <action type="Rewrite" url="product.aspx?category={R:1}&ampid={R:2}" appendQueryString="false" />                </rule>            </rules>        </rewrite>    </system.webServer></configuration>

2、Apache服务器

Linux系统下的Apache服务器在伪静态设置方面比较简单。由于Apache的mod_rewrite模块默认就是开启的,所以站长只需在空间下上传正确的.htaccess配置文件即可。下面也给出实现上述伪静态功能的规则代码。

RewriteEngine onRewriteRule product/([a-z]+)/([0-9]+) product.php?category=$1&id=$2

3、IIS 6.0服务器

在IIS 6.0环境下,无论是ASP、ASP.NET或者是PHP程序,我们都可以借助第三方的Rewrite组件来实现静态化,点此下载组件。

将该组件下载到服务器的C盘,解压后对目录设置权限,赋予Users组读取和运行权限。

4、打开该目录下的httpd.ini文件,这里是伪静态规则设置的核心。比如我们要实现上述功能,可以这样编写规则代码。

[ISAPI_Rewrite]了http://m.fulinmenst.com/m/prod_view.aspx?TypeId=65&Id=183&Fid=t3:65:3&typefid=65

RewriteRule ^/product/([a-z]+)/(\d+)\?*(.*)$ /product.aspx\?category=$1&id=$2

5、下面就是将该组件配置到IIS中了。打开网站属性,点击ISAPI筛选器选项卡,再点击添加按钮。

6、在对话框中,输入筛选器名称,如rewrite,然后定位到我们之前解压下来的可执行文件Rewrite.dll上。

至此,基于IIS 6.0的伪静态配置完毕。如果有多个站点,那么就复制同样的Rewrite目录,然后定位到不同目录中的Rewrite.dll即可。如果要修改规则,只需修改httpd.ini文件,保存后即时生效,无需重启IIS。

ASP.NET Routing

.NET框架从4.0版本起开始支持Routing功能,如果您的代码是ASP.NET编写的,则可以考虑使用这种静态化方式。这种方式的好处就是无需在服务器上做配置,并且伪静态的URL地址和整个代码是天然一体的,代码中可以自动生成静态化URL,避免了在.htaccess/web.config模式下,一旦修改了伪静态规则,还要修改代码中的静态化网址的麻烦。

这个需要空间支持的  空间http.ini设置开启rewrite模块 然后

1)IIS伪静态

打开httpd.ini文件,加入如下规则

#TAG标签伪静态规则

RewriteRule ^(.*)/tags\.html $1/tags\.php [I]

RewriteRule ^(.*)/tags/(.*)(?:(\?.*))* $1/tags\.php\?\/$2 [I]

RewriteRule ^(.*)/tags/(.*)\/(?:(\?.*))* $1/tags\.php\?\/$2\/ [I]

RewriteRule ^(.*)/tags/(.*)\/([0-9])(?:(\?.*))* $1/tags\.php\?\/$2\/$3 [I]

RewriteRule ^(.*)/tags/(.*)\/([0-9])\/(?:(\?.*))* $1/tags\.php\?\/$2\/$3\/ [I]

2)Apache伪静态

打开.htaccess文件,加入如下规则:

RewriteRule ^tags/(.*)\.html$  tag\.php?$1

你可以咨询一下空间商支不支持rewrite 不支持的话 不行的


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/65010.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-28
下一篇2023-02-28

发表评论

登录后才能评论

评论列表(0条)

    保存