今晚帮一个客户做他们公司的官网。最后,肯定为了做seo需要帮他们搞搞伪静态了。。。看了看他们的服务器原来是IIS7,哎。。。还以为是apache
iis不知咋整,之前都是正apache的。
那到底IIS下的伪静态与域名301要怎么实现呢?不怕我们可以去找google,哈哈。
Google了下,还蛮多,试了试那么几个总结了个可以正常工作的,这里记录下,方便自己以后查找或者你我他搜到这文章,嘿嘿。。。
第一步、在根目录新建一个文件“web.config”,对应apache的就是.haccess文件了。
第二部、写入相应的规则,这个其实跟apache差不多就是微软老喜欢高出自己的一套东西来。
代码如下 | 复制代码 |
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <!--伪静态开始--> <rewrite> <rules> <!--这里是做域名的301跳转--> <rule name="CanonicalHostNameRule1"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^www.testdomain.com$$$$" negate="true" /> </conditions> <action type="Redirect" url="http://www.testdomain.com/{R:1}" /> </rule> <!--这里是做域名的301跳转,就这么多了--> <rule name="index"> <match url="^(.*/)*index.html$" /> <action type="Rewrite" url="{R:1}/index.php" /> </rule> <rule name="about"> <match url="^(.*/)*about-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/about.php?cid={R:2}&page={R:3}" /> </rule> <rule name="news"> <match url="^(.*/)*news-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/news.php?cid={R:2}&page={R:3}" /> </rule> <rule name="newsshow"> <match url="^(.*/)*newsshow-([0-9]+)-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/newsshow.php?cid={R:2}&id={R:3}&page={R:4}" /> </rule> <rule name="contact"> <match url="^(.*/)*contact-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/contact.php?cid={R:2}&page={R:3}" /> </rule> <rule name="goods"> <match url="^(.*/)*goods-([0-9]+)-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/goods.php?cid={R:2}&tid={R:3}&page={R:4}" /> </rule> <rule name="goodsshow"> <match url="^(.*/)*goodsshow-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+).html$" /> <action type="Rewrite" url="{R:1}/goodsshow.php?cid={R:2}&tid={R:3}&id={R:4}&page={R:5}" /> </rule> <rule name="custom"> <match url="^(.*/)*(w+).html$" /> <action type="Rewrite" url="{R:1}/{R:2}.php?" /> </rule> </rules> </rewrite> <!--伪静态结束--> <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension, LongDate" /> </system.webServer> </configuration> |
好吧,IIS下的伪静态与域名301就写这么多了,301还有一种实现方法就是直接在iis管理中设置
IS7或IIS7.5
1、先在IIS里把网站正常发布,例如域名为(www.111cn.net)
2、再硬盘上建一个空文件夹
3、再到IIS里建一个网站,例如域名为(111cn.net),指向这个空文件夹,然后在这个又新建的网站的“功能视图”里打开“HTTP 重定向”,选中“将请求重定向到此目标”, 在下面的文本框里输入自己的域名(www.111cn.net),再选中“将所有请求重定向到确切的目标(而不是相对于目标)”,状态代码选择成“永久(301)”。
这样现在可以测试一下,输入111cn.net,会直接跳转到www.111cn.net
对于参数的问题:
都可以在重定向输入的URL后面加上$S$Q,例如www.111cn.net$S$Q
时间: 2024-12-24 13:45:17