Helicon重定向到IIS6虚拟目录 - .htaccess语法和位置

时间:2009-07-11 17:15:45

标签: .htaccess iis-6 isapi-rewrite

我正在将我的IIS 6 Web服务器上的物理文件夹(/ blog /)中的博客移动到运行BlogEngine.net的名为(blog)的虚拟目录中,虚拟目录也在运行应用程序池作为父网站。

我想将每个.html帖子重定向到新的BlogEngine.net网址。 e.g。

  

http://www.mywebsite.co.uk/blog/2009/06/old-blog-title.html      http://www.mywebsite.co.uk/blog/post/new-blog-title.aspx

我已经在我的网站上运行了Helicon ISAPI重写版本3.1.0.58,目前重定向工作正常。但重定向到博客虚拟目录似乎不起作用。

当前.htaccess规则:

#rewriterule ^blog/2009/06/old-blog-title.html$ /blog/post/new-blog-title.aspx [R=301,L]

问题1:我应该将.htaccess规则添加到博客虚拟目录根目录还是主网站根目录?

问题2:我应该使用什么.htaccess语法重定向到虚拟目录?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

我没有得到任何回应,但我自己弄清楚了。该LOL是否有StackOverflow徽章:-) 我正在回答我自己的问题,只是因为其他人有同样的问题。

回答问题1

.htaccess文件应位于虚拟目录根目录中,但您无法在IIS 6的Helicon重写选项卡中为虚拟目录编辑此文件,因为它希望将.htaccess文件保存在名为/的物理目录中博客/而不是虚拟目录。

回答问题2

由于虚拟目录中的.htaccess文件位置,需要稍微修改重写。基本上从旧网址的开头删除博客。

rewriterule ^2009/06/old-blog-title.html$ /blog/post/new-blog-title.aspx [R=301,L]

答案 1 :(得分:1)

如果您需要重定向几篇博客文章,那么您的规则就可以了,但如果您有数百篇文章,那么最好查看ISAPI_Rewrite here的mapfiles功能。

  

但您无法在IIS 6的Helicon重写选项卡中为虚拟目录

编辑此内容

此问题已在构建62中修复,因此请更新并享受。