首先,我的设置是运行Windows 2003 Server的VPS,它具有多个域IIS 6,Plesk
IsapiRewrite4.ini
RewriteLogLevel 3 RewriteCond %{HTTP_HOST} ^mydomain.com$ RewriteRule ^/(.*)$ http://www.mydomain.com/$1 [R]
这是他们的基本例子之一。 离子是安装和设置适当的,因为如果我使用另一个规则(更简单的一个…就像下面的一个),它的工作即时
# IsapiRewrite4.ini # RewriteLogLevel 3 # # This ini file illustrates the use of a redirect rule. # Any incoming URL that starts with an uppercase W # will be redirected to the specified server. RewriteRule ^/(W.*)$ http://server.dyndns.org:7070/$1 [R]
这个在TestDriver工具中工作,没有一个在TestParse工具中给出任何错误或者警告,但是它在web服务器上没有做任何事情。一个规则起作用的事实意味着isapi模块工作。 我正在使用最后一个版本。
RedirectRule http://mydomain.com/someplace/somefile.html http://www.mydomain.com/howto/someplace/anotherfile.html [I,L]
这两个例子都取自http://iirf.codeplex.com/Wiki/View.aspx?title=Redirection&referringTitle=Home所以我的IsapiRewrite4.ini需要做这两个任务:自动转换和redirect的一些url。 你能帮忙吗?我真的不知道我做错了什么。
RedirectRule是新的语法。 301或302redirect的旧语法是带有[R]标志的RewriteRule ,但是它变得非常混乱,所以它被改变了。 使用当前版本的IIRF,要执行redirect,请使用RedirectRule指令。
注意 :
从IIRF v2.1.1.5开始,再次支持带有[R]标志的RewriteRule语法,以便与mod_rewrite兼容。
那么我已经设法使其工作..我有一些安全权限问题与Ionicfilter.dll文件
首先我使用了RewriteRule,但是在用TestParser.exetesting之后,我把它改成了RedirectRule。 反正这就是我现在使用的,它工作正常:
RedirectRule ^/features/sepia.html$ http://www.mywebsitename.com/howto/add-effect/sepia.html [R=301]
如果您尝试使用带有“R”标志(远程redirect)而不是“ RedirectRule ”的RewriteRule关键字,会发生什么情况:
RewriteRule http://mydomain.com/someplace/somefile.html http://www.mydomain.com/howto/someplace/anotherfile.html [R,I,L]
如果URL具有破折号( – )字符,则RedirectRule可以正常工作。 例如/ vitamin-d /,/vitamin-d/index.htm
重写规则有破折号的问题。