0

我目前正在使用 URLRewrite 在 OrchardCMS 中做一些事情,这样如果用户从 site.com 或 site.com/orchard 访问该站点,他们就会得到 site.com/orchard 页面。

问题之一是它在菜单中抛出了 url,因为它使用了 urlHelper.RouteUrl,它使用了错误的上下文,然后生成了一个类似 site.com/page1 而不是 site.com/orchard/page1 的 url。有没有办法告诉 urlHelper.RouteUrl 从与当前页面不同的页面开始,或者让函数返回完整路径?

谢谢

4

2 回答 2

0

尝试在site.com/orchard虚拟目录下设置您的应用程序,然后在用户进入 site.com 时使用 IIS 中的 UrlRewrite 进行适当的 301 重定向。这是一种更清洁的方法。

高温高压

于 2011-03-29T12:35:55.763 回答
0

也许您可以使用 Orchard Rewrite 模块,您可以在其中定义如下重定向规则:

RewriteCond %{REQUEST_URI} !^orchard [NC]
RewriteRule ^(.*)$ /orchard/$1 [R=301,L]
于 2011-03-28T22:14:03.240 回答