第一种方法:web.config
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="OrgPage" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^(.*)$" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
第二种方法:web.config
代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="规则 1" stopProcessing="true">
<match url="^includes/(.*)" />
<action type="Rewrite" url="includes\/{R:1}" />
</rule>
<rule name="规则 2" stopProcessing="true">
<match url="^(blog)/includes/(.*)" />
<action type="Rewrite" url="{R:1}/includes\/{R:2}" />
</rule>
<rule name="规则 3" stopProcessing="true">
<match url="^(blog)/(.*).html(.*)" />
<action type="Rewrite" url="{R:1}/index.php\/{R:2}.html{R:3}" />
</rule>
<rule name="规则 4" stopProcessing="true">
<match url="^(.*).html(.*)" />
<action type="Rewrite" url="index.php\/{R:1}.html{R:2}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
下面是补充:
IIS 7和IIS 7.5及以后的版本估计都会使用web.config来实现伪静态规则,于是以前的伪静态文件必须更改。网上找了一圈,还没有发现比较全面的web.config伪静态规则,于是我们这里整理一份,供初次使用的朋友参考。
实现普通页面、带一个数字参数页面和带两个参数页面的伪静态!
<?xml version="1.0" encoding="UTF-8"?><configuration><system.webServer><rewrite><rules> <rule name="Index" stopProcessing="true"><match url="^index.html" /><action type="Rewrite" url="index.php" /></rule> <rule name="Rule1" stopProcessing="true"><match url="^news_([0-9]+).html" /><action type="Rewrite" url="news.php?nid={R:1}" /></rule><rule name="Rule2" stopProcessing="true"><match url="news_list_([0-9]+)_([0-9]+).html" /><action type="Rewrite" url="news_list.php?nid={R:1}&page={R:2}" /></rule> </rules></rewrite></system.webServer></configuration>
IIS 7.5通过web.config实现301重定向的方法,将不带www的域名转向到带www的域名上!
<?xml version="1.0" encoding="UTF-8"?><configuration><system.webServer><rewrite><rules> <rule name="Redirect" stopProcessing="true"><match url=".*" /><conditions><add input="{HTTP_HOST}" pattern="^chuangluo.com$" /></conditions><action type="Redirect" url="http://www.chuangluo.com/{R:0}" redirectType="Permanent" /></rule> </rules></rewrite></system.webServer></configuration>
由于网站使用了转义字符,因此在实际使用的时候,大家不可以直接复制以上代码。请复制粘贴到Dreamweaver等编辑器后,使用替换功能把双引号全部替换为英文状态下的双引号,然后再修改rule标签内的内容就可以了,跳转的地方请更改为自己的网址即可。
需要注意的地方是以前httpd.ini和.htaccess支持网址中两个参数用&符号链接,在web.config中是不支持的,需要将这个符号更改为&才能正常使用。
第一步:首先打开Internet 信息服务,在左侧点击被做301重定向的网站(蓝色标注);第二步:双击右侧的HTTP重定向按钮;第三步:将请求重定向到此目标打钩,并在下面输入你要重定向到的网站或网站目录,并将状态代码选择为永久(301):第四步:我们来看一下301重定向是否成功;
设置301重定向是不是比Windows 2003和Windows 2008操作系统的服务器要简单很多,不用加什么代码,也不用改什么文件。
.htacess文件是apache下面的伪静态文件,nginx环境下,这个文件经过简单设置后同样有效如果是windows2003,实际
上程序提供商会同时提供apache和windows
2003下面的伪静态文件,我们不必担心。如果用的是IIS
7或IIS
7.5,这下面的伪
静态文件是web.config文件,那么要怎么把.htacess文件转换为web.config文件呢?
这是前段时间我遇到的问题,花钱买了一个程序,程序商没有提供web.config伪静态文件,找他要,他说他不知道咋弄,
要我自己去弄我只好去淘宝网找人弄,随便找了个店家,问了问,开口要价200元,都快把我噎住了,不到20句伪静态转换居
然要200元?换了好几家店铺,没有一家低于150元,因此还是觉得自己弄!
上网查找了很多的资料,终于找到了很简单的解决方法,只要几分钟即可搞定,完全不必花费几十元甚至上百元让人来弄
。这个方法的解决方法是Urlrewrite插件,这是地址重写插件,安装以后可以加载到IIS7及IIS7.5面板上面,我们直接用这个
插件的功能即可把.htacess伪静态文件转换为.webconfig文件。
下载安装Urlrewrite插件
这个插件默认不集成在IIS7及7.5上面,要网友自己去下载安装,目前的版本是URL
Rewrite
2.0,安装完成以后,重启IIS
7或IIS
7.5,选择自己的网站,那么会看到Urlrewrite模块,这是全英文的。安装方法很简单,按默认配置安装即可,不用修改安装文件的地址。
下载地址:http://www.iis.net/extensions/urlrewrite
进入使用Urlrewrite插件
进入服务器管理器,选择“Internet信息服务”-“起始页”-“自己的网站”,哪个网站要使用伪静态,那么进入到哪个网
站,点击网站名即可进入到对应的网站控制面板,选择Urlrewrite模块即可,进入以后即可看到Urlrewrite全英文的界面。
转换.htacess伪静态文件
如果要转换.htacess伪静态文件,那么选择Import
mod_rewrite
Rules,即是右边区域第三行黑字下面的选项,点击即可
进入,进入以后会看到相应的对话框,我们点击上面输入框右侧的按钮,选择.htacess伪静态文件,再点击上面输入框下面的
Import即可导入,导入以后,我们会在Rewrite
rules看到导入成功的伪静态规则,选择右边的操作-应用即可。
转换.webconfig文件成功
IIS7及IIS7.5下面是不支持直接用.htacess伪静态文件的,伪静态文件都要变换为web.config文件,实际上经过上面的导
入操作,我们去网站目录,会发现网站的web.config文件已经有很多伪静态规则。这时你要去做的是检查伪静态规则是否正确
,理论上只要是标注的.htacess伪静态文件,那么导入以后都会准确的。
上面的操作只要几分钟时间,不过当初我查找相关的资料,还是花费掉好几小时,因此写成本文,希望对使用IIS
7及IIS
7.5的站长有所帮助当然,如果是虚拟主机遇到伪静态规则问题,直接联系空间商即可,空间商会处理好一切的。本文由121
好资讯(http://www.121h.com/)原创,欢迎转载分享,不妨保留链接,站长应该互助!
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)