這絕對是Url別名包中的一個錯誤。
解決這個問題的最快方法很可能就是推出自己的http模塊,至少在發佈修補程序之前。 你可以從GitHub的軟件包回購中獲取源代碼,並調整它以解決問題,確保從web.config註銷捆綁的http模塊並註冊自己的代碼。
當前的HTTP模塊源是在這裏:https://github.com/CPHCloud/c1packages-urlaliases/blob/v1.0.2/CphCloud.Packages.UrlAlias/UrlAliasHttpModule.cs
變化incomingUrlPath
值使用PathAndQuery
代替AbsolutePath
,像這樣:
...
static void httpApplication_BeginRequest(object sender, EventArgs e)
{
var httpApplication = (HttpApplication)sender;
var incomingUrlPath = HttpUtility.UrlDecode(httpApplication
.Context.Request.Url.PathAndQuery.TrimEnd(new[] { '/' }));
....
在你的web.config文件,你應該註銷URL別名'handler
<!--add name="UrlAlias" type="CphCloud.Packages.UrlAlias.UrlAliasHttpModule,
CphCloud.Packages.UrlAlias,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /-->
並且註冊您自己的
<add name="CustomUrlAlias" type="CphCloud.Packages.UrlAlias.UrlAliasHttpModule,
YourAssemblyName,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
完全披露:我是URL別名包的作者。
非常感謝。 *開發人員*(眨眼睛)將全面修復它,你有什麼想法嗎? – niico
複合材料必須在提交後審查包裝,因此在幾天內應該啓動。當我提交它時,我會將它添加到Github回購中作爲預發佈,併發布到構建的鏈接。然後,您可以在Composite將其發佈到其附加市場之前將其作爲本地包安裝。 –
優秀 - 我可以等幾天。非常感謝。我從來沒有'更新'一個包 - 我卸載然後重新安裝? – niico