DotNetNuke.Entities.Urls.UrlRewriterUtils - System.ArgumentNullException
DotNetNuke.Entities.Urls.UrlRewriterUtils - System.ArgumentNullException
在 DNN (9.2) 模块上工作,尝试直接从浏览器中的 URL 地址栏调用 http://dnndev.me/desktopmodules/rentalz/server.ashx
时,DNN 日志文件中出现以下错误:
DotNetNuke.Entities.Urls.UrlRewriterUtils - System.ArgumentNullException:
Value cannot be null.
Parameter name: url
at System.Web.HttpResponse.Redirect(String url,
Boolean endResponse, Boolean permanent)
at DotNetNuke.Entities.Urls.AdvancedUrlRewriter.ProcessRequest(
HttpContext context, Uri requestUri, Boolean useFriendlyUrls,
UrlAction result, FriendlyUrlSettings settings,
Boolean allowSettingsChange, Guid parentTraceId)
当我从 Web.config 文件中删除以下条目时,ASHX 页面可以正常工作,但站点的其余部分会被炸掉!
<add name="UrlRewrite" type="DotNetNuke.HttpModules.UrlRewriteModule,
DotNetNuke.HttpModules" preCondition="managedHandler" />
有人知道这是什么原因吗?
您不应该再使用处理程序。这是一种很容易在您的网站上造成安全漏洞的旧技术。您应该改为使用 Web API。这也更容易做到。
此请求不应由 URL 重写器处理,默认情况下它会忽略 ashx
请求。您可以进入SEO设置页面,查看URL管理下的表达式选项卡,查看ashx
是否是在 不重写 URL 正则表达式 中列出。您还可以转到 测试 URL 选项卡并将您的 URL 放入以查看系统正在尝试执行哪种重写。
在 DNN (9.2) 模块上工作,尝试直接从浏览器中的 URL 地址栏调用 http://dnndev.me/desktopmodules/rentalz/server.ashx
时,DNN 日志文件中出现以下错误:
DotNetNuke.Entities.Urls.UrlRewriterUtils - System.ArgumentNullException:
Value cannot be null.
Parameter name: url
at System.Web.HttpResponse.Redirect(String url,
Boolean endResponse, Boolean permanent)
at DotNetNuke.Entities.Urls.AdvancedUrlRewriter.ProcessRequest(
HttpContext context, Uri requestUri, Boolean useFriendlyUrls,
UrlAction result, FriendlyUrlSettings settings,
Boolean allowSettingsChange, Guid parentTraceId)
当我从 Web.config 文件中删除以下条目时,ASHX 页面可以正常工作,但站点的其余部分会被炸掉!
<add name="UrlRewrite" type="DotNetNuke.HttpModules.UrlRewriteModule,
DotNetNuke.HttpModules" preCondition="managedHandler" />
有人知道这是什么原因吗?
您不应该再使用处理程序。这是一种很容易在您的网站上造成安全漏洞的旧技术。您应该改为使用 Web API。这也更容易做到。
此请求不应由 URL 重写器处理,默认情况下它会忽略 ashx
请求。您可以进入SEO设置页面,查看URL管理下的表达式选项卡,查看ashx
是否是在 不重写 URL 正则表达式 中列出。您还可以转到 测试 URL 选项卡并将您的 URL 放入以查看系统正在尝试执行哪种重写。