首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用BlogEngine重定向URL

用BlogEngine重定向URL
EN

Stack Overflow用户
提问于 2012-05-04 14:06:18
回答 1查看 940关注 0票数 3

我正在将博客从dasBlog迁移到BlogEngine。在dasBlog中,我的URL看起来是这样的。

http://pfsolutions-mi.com/blog/2008/03/08/Beyond-Compare.aspx

而在BlogEngine中,我的URL看起来是这样的。

http://pfsolutions-mi.com/blog/post/2008/03/08/Beyond-Compare.aspx

这两个URL之间唯一的区别是BlogEngine中的"post“子文件夹。

由于我目前正在使用IIS重写从URL中删除WWW,所以我认为最简单的解决方案是创建另一个规则来处理添加子文件夹的问题。我试过这样的方法。

rule name="Blog重定向“enabled=真”stopProcessing=“true

匹配url="^blog/(_0-9+)/(_0-9+)/(_0-9+)/(_0-9a-z-+).(_0-9a-z-+)$“

行动type=“重定向”url=博客/post/{R:1}/{R:2}/{R:3}/{R:4}.{R:5}“redirectType=”临时“

然而,当我输入一个旧的dasBlog网址时,它不会被重定向到新的位置。相反,我得到了通用的BlogEngine 404错误页面。

注意:一旦我知道一切都正常,我计划将redirectType改为永久的。

EN

回答 1

Stack Overflow用户

发布于 2012-05-14 07:20:36

你的匹配的正则表达式不应该更像这个吗?

代码语言:javascript
复制
match url="^blog/([0-9]+)/([0-9]+)/([0-9]+)/([\w-]+)\.([a-z]+)$"

日期号没有下划线,而且你的[_0-9a-z-]+不包括大写字母,比如“无法比较”。

所以在这里我们应该有: url="^blog/digits/digits/digits/any-word-characters.lowercase-letters$“

我们还可以通过以下方式指定更多内容:

代码语言:javascript
复制
match url="^blog/([0-9]{2,4})/([0-9]{2})/([0-9]{2})/([\w-]+)\.([a-z]{3,4})$"

基于这样的假设,你总是:

  1. 年作为"08“或”2008“
  2. 月和日,以"01”或“11”
  3. 文件结尾,以3或4个小写字母(htm、html、php、asp、aspx等)

结尾。

编辑:我认为"\w+“不包括连字符,所以您必须将其转换为"\w-+”。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10450478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档