【发布时间】:2015-04-18 07:00:55
【问题描述】:
我的 IIS 中有 ASP.NET MVC 3 项目。我需要实现 301 重定向,我有这样的示例
RewriteEngine On
RewriteCond %{HTTP_HOST} ^mysite.ua$ [NC]
RewriteCond %{REQUEST_URI} !^/robots.*
RewriteRule ^(.*)$ http://www.mysite.ua/$1 [R=301,L]
有没有办法在 MVC 3 中实现这样的事情而不向 IIS 添加 URLRewrite 模块?
好的,所以我安装了 URLRewrite,这是我的 web.config
<rewrite>
<rules>
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^example.com$" />
<add input="{URL}" pattern="^/robots.*" ignoreCase="false" negate="true" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:1}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
我需要这个东西从 example.com 重定向到 www.example.com。但现在它没有重定向。
【问题讨论】:
-
何时何地需要重定向?
-
实际上,我的 SEO 专家告诉我添加“301 重定向”脚本,我真的不知道如何处理他的建议。
-
按照您所说的安装模块并导入规则的最简单方法:iis.net/learn/extensions/url-rewrite-module/… 或者,您始终可以创建简单的 HttpModule,它将执行重定向
-
我不允许将模块安装到 IIS,所以你能告诉我更多关于如何创建简单的 HttpModule 的信息吗?