微軟 URLRewriter重寫地址報錯:未將物件引用設定到物件的例項。 URLRewriter\RewriterFactoryHandler.cs:行號 38 解決方案
阿新 • • 發佈:2018-12-10
這個錯經常在伺服器上出現。後來慢慢發現,重啟伺服器之後一段時間不會報錯。但是還是找不到解決辦法。最終百度終於找到了問題所在,因為快取過期了,導致出錯。
下載原始碼,找到報錯的地方:
F12進去GetConfig這個方法裡面。
public static RewriterConfiguration GetConfig() { if (HttpContext.Current.Cache["RewriterConfig"] == null) //HttpContext.Current.Cache.Insert("RewriterConfig", ConfigurationSettings.GetConfig("RewriterConfig")); HttpContext.Current.Cache.Insert("RewriterConfig", ConfigurationSettings.GetConfig("RewriterConfig"), null, DateTime.Now.AddYears(100), TimeSpan.Zero, CacheItemPriority.High, null); return (RewriterConfiguration) HttpContext.Current.Cache["RewriterConfig"]; }
註釋的地方是原來的程式碼,下面哪一行程式碼是我修改之後加入快取時間的程式碼,把這句程式碼代替原來的程式碼即可解決問題。