以前更新過我的mvc應用程序,從mvc2到mvc 3,最後一週更新到mvc 4.還將它從IIS6服務器移動到IIS7服務器。'F'代幣在網址?
現在很多由mvc路由生成的url在url中都有token。就像這樣:
此標記適用於網頁上的所有URL的70%,甚至圖像。 它看起來像用於無Cookie瀏覽器的Forms Auth令牌。但是我在web.config中禁用了Cookieless(僅將其設置爲cookie)。此外,它適用於所有瀏覽器(啓用cookies),甚至當用戶沒有登錄時。
如何解決此問題?有任何想法嗎?想想,當升級到新的mvc時,我錯過了一些東西。
UPD。試圖禁用cookieless(web.config):
<sessionState cookieless="false" />
<authentication mode="Forms">
<forms loginUrl="~/LogOn" timeout="2880" cookieless="UseCookies" />
</authentication>
UPD1。我在母版頁中使用了幾個RenderAction命令來渲染一些通用的部分視圖。和這些部分的控制器方法,我用OututCache屬性標記。刪除了這個屬性 - 所有的網址現在看起來不錯。這很奇怪,但幫助了我。
<%Html.RenderAction("BlogPosts", "Widgets", new RouteValueDictionary()); %>
[ChildActionOnly]
//[OutputCache(Duration = 180)]
public ActionResult BlogPosts()
{
var model = new BlogListModel();
model.BlogPostType = defService.BlogType();
model.List = widgetService.BlogPosts(3);
return PartialView("Widgets/BlogPostsWidget", model);
}
http://stackoverflow.com/questions/6229565/iis7-5-asp-net-mvc-users-hitting-strange-urls-f1xe9exixpz可能包含一些有用的信息。 – Stijn
不幸的是,它並沒有幫助我 – barbarian
你能澄清你是如何禁用web.config中的Cookieless嗎? – eis