服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - IIS - 没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

2021-08-03 17:17IIS教程网 IIS

IIS中增加URL Rewrite功能,最多人选用的是名为“ISAPI Rewrite“的软件,网上下载的破解版,其实破解不完善,最终会不能用

再次查找,找到了Ionic's Isapi Rewrite Filter,完全开源,完全免费,完全没有中文使用手册。

测试后,使用正常,用法分享一下:

首先到官方网站http://www.codeplex.com/IIRF/Release/ProjectReleases.aspx下载最新软件包,注意要下载的是IonicIsapiRewriter-2.*-Release-bin.zip(我们下载地址),版本号可能会变化。以下安装仅针对WIN2003+IIS6.0的服务器环境。

一、安装IIRF

1、复制IIRF的DLL(IIRF.dll)到相应的文件夹,如D:Rewrite。 或者,它可以在一个完全不同的目录树。 这取决于你。

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

2、如果您创建一个服务器全局范围的设置文件(IirfGlobal.ini),你必须把它与(IIRF.dll)文件在同一目录中。 该URL Rewrite筛选器将寻找其在该文件中的全局设置文件。 如果是多个站点,则在站点更目录下创建(IIRF.dll)文件。

3、对(IIRF.dll)所在目录赋予IIS_WPG用户组“读取”、“读取与运行”、“写入”权限。

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

4、 打开Internet信息服务管理器。右键点击IIS管理器左栏“网站” 》“属性”,弹出“网站属性”选项卡,选择“ISAPI筛选器”,如下图添加IIRF。

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

5、重启IIS

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

6、右键点击IIS管理器左栏“网站” 》“属性”,弹出“网站属性”选项卡,选择“ISAPI筛选器”,查看“IIRF”加载是否成功。若是绿色向上箭头,则表示加载成功。

没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

二、规则文件格式基本照搬ISAPI Rewrite,要作修改

RewriteRule [源URL正则条件] [目的URL]
ISAPI Rewrite与IIRF的区别就在[目的URL],ISAPI Rewrite的要转义,而IIRF不用转义。
如果网上有现成的ISAPI Rewrite的规则可以直接复制过来,将[目的URL]中的反斜杠()一个个删除就可以用在IIRF中用了。
知道这个之后,你就可以随便在网上与人交流,按ISAPI Rewrite交流,最后把转义符()删掉就行了。
 
三、日志设置

在IIRF中日志值可以设置为0-5,在规则文件的开头部分有两行设置日志类型
RewriteLog C:RewritesupesiteiirfLog.out (注意要写清楚路径,各站点不同)
RewriteLogLevel 0 (0为不记类,3为一般测试,5为处理故障)
日志的代价高昂,同时不会自动删除文件,日志类型一定要设成0,除非用于检查才能修改为其他值,检查完后一定要改为0,否则日志文件把硬盘占满就麻烦了。
如果日志不为0,筛选器起用后,对应文件夹会产生类似以下的文件,是文本格式的,可以用记事本查看。
iirfLog.out.12345.log

四、查看配置

在IIRF.ini文件中输入以下配置参数,则可通过浏览器方便查看目前IIRF配置
StatusUrl iirfStatus
StatusInquiry ON
在浏览器中输入http://localhost/iirfstatus,即可查看。

五、规则文件可随时修改,随时生效!六、附上wordpress的IIRF规则

先到wordpress后台设置固定连接为:/post/%post_id%.html
然后在wordpress所在网站的根目录创建(IIRF.ini)文件,并在文件中加入以下规则:

  1. RewriteLogLevel 0 
  2. RewriteLog E: lyingbluelogfilesIIRFLOGlog 
  3. StatusUrl iirfStatus StatusInquiry ON 
  4. RewriteRule /index.html$ /index.php [L] 
  5. # from accessing through HTTP 
  6. # # WordPress rewrite rules# 
  7. # # Below is for permalink like /post/%post_id%.html 
  8. # # Provided By Sideblue 
  9. # # URL:http://ivup.cn RewriteCond %{REQUEST_FILENAME} ^wp-content.* RewriteCond %{REQUEST_FILENAME} ^wp-admin.* 
  10. RewriteCond %{REQUEST_FILENAME} ^wp-include.* 
  11. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d 
  12. RewriteRule /post/tag/(.*) /index.php?tag=$1 
  13. RewriteRule /tag/(.*) /index.php?tag=$1 
  14. RewriteRule /(contact|about-copyright|favor|archives|tags|sitemap) /index.php?pagename=$1 
  15. RewriteRule /post/category/(.*)/(feed|rdf|rss|rss2|atom)/?$ /wp-feed.php?category_name=$1&feed=$2 
  16. RewriteRule /post/category/?(.*) /index.php?category_name=$1 
  17. RewriteRule /author/(.*)/(feed|rdf|rss|rss2|atom)/?$ /wp-feed.php?author_name=$1&feed=$2 
  18. RewriteRule /author/?(.*) /index.php?author_name=$1 
  19. RewriteRule /rss.xml /wp-feed.php?feed=rss2 
  20. RewriteRule /feed/?$ /wp-feed.php?feed=rss2 
  21. RewriteRule /comments/feed/?$ /wp-feed.php?feed=comments-rss2 # 
  22. RewriteRule /([0-9]+)/?([0-9]+)?/?$ /index.php?p=$1&page=$2 # 
  23. RewriteRule /post/([0-9]+)/?([0-9]+)?/?$ /index.php?p=$1&page=$2 
  24. RewriteRule /post/([0-9]+).html /index.php?p=$1 
  25. RewriteRule /page/(.*)/?s=(.*) /index.php?s=$2&paged=$1 
  26. RewriteRule /page/(.*) /index.php?paged=$1 
  27. RewriteRule /post/date/([0-9]{4})([0-9]{1,2})([0-9]{1,2})/([^/]+)/?([0-9]+)?/?$ /index.php?year=$1&monthnum=$2&day=$3&name=$4&page=$5 
  28. RewriteRule /post/date/([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$ /index.php?year=$1&monthnum=$2&day=$3&page=$4 
  29. RewriteRule /post/date/([0-9]{4})/([0-9]{1,2})/?$ /index.php?year=$1&monthnum=$2&page=$3 
  30. RewriteRule /post/([0-9]+).html/(feed|rdf|rss|rss2|atom) /index.php?feed=rss2&p=$1 
  31. RewriteRule /post/([0-9]+).html/trackback /wp-trackback.php?p=$1 

延伸 · 阅读

精彩推荐
  • IIS云服务器怎么停止iis

    云服务器怎么停止iis

    云服务器 是一种虚拟化的服务器,它可以提供强大的计算和存储资源,让用户能够更灵活地部署和管理自己的应用程序和网站。在使用云服务器时,有时候...

    未知682023-09-06
  • IISIIS6架设网站过程常见问题解决方法总结

    IIS6架设网站过程常见问题解决方法总结

    很多朋友在用IIS6架网站的时候遇到不少问题,而这些问题有些在过去的IIS5里面就遇到过,有些是新出来的,俺忙活了一下午,做了很多次试验,结合以前...

    IIS教程网7262021-08-24
  • IIS建站助手无法安装iis-其他问题

    建站助手无法安装iis-其他问题

    问:建站助手无法安装iis服务,显示Run-timeerror\429\: Activexcan\t 服务器IP:127.0.0.1127.0.0.1127.0.0.1用户名:**********密码:********** ,建站助手无法安装iis 答:您好,...

    未知2042023-05-10
  • IIS远程分析win2003 IIS安全设置

    远程分析win2003 IIS安全设置

    提起微软公司 IIS web服务器的安全问题,很多人立刻就会联想到那些为人们所称颂的致命漏洞:UNICODE,CGI解析,.ida,idq,.Printer远程溢出等.这些伟大的漏洞恐怕是我...

    服务器技术网3722020-09-12
  • IISIIS7.5使用web.config设置伪静态的二种方法

    IIS7.5使用web.config设置伪静态的二种方法

    IIS7.5使用web.config设置伪静态方法,有需要的朋友可以参考一下。...

    IIS之家4752020-08-28
  • IIS解决FastCGI 进程超过了配置的活动超时时限的问题

    解决FastCGI 进程超过了配置的活动超时时限的问题

    本篇文章是对解决FastCGI 进程超过了配置的活动超时时限的方法进行了详细的分析介绍,需要的朋友参考下 ...

    jingxian6562020-05-08
  • IISIIS调用X-Forwarded-For Header (XFF)记录访客真实IP的两种方法

    IIS调用X-Forwarded-For Header (XFF)记录访客真实IP的两种方法

    通过IIS发布的网站放到F5设备后边,通过透明监听模式WAF设备过滤后,公网访问者的真实IP被WAF设备IP替代,在网站日志看不到原来的真实IP了...

    hzfw200813292021-04-22
  • IIS如何备份和恢复IIS6和IIS7的设置

    如何备份和恢复IIS6和IIS7的设置

    Windows的IIS有一个非常“坑爹”的备份还原功能,和大部分备份还原不同的是,这个服务默认不支持不同电脑之间的备份还原,如果用户重装Windows的话,即...

    服务器技术网10482022-03-03