/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

Discuz!NT 图像因存在错误而无法显示

2014-11-23 十有三 0 浏览:5246 .NET技术 网站维护 | ASP.NET

Discuz!NT的"upload"、"space/upload/"和"avatars/upload/"这三个文件夹下的图片无法直接通过URL访问,在火狐浏览器中输入图片URL会提示图像"….(这是图片路径)"因存在错误而无法显示,而其他浏览器者直接显示空白。

火狐浏览器图片错误

造成这个问题的主要原因是因为Discuz!Nt的URL重写将这三个文件夹给屏蔽掉了,所以我们需要修改下源代码。可以参考下这篇文章:《Discuz!Nt Flash无法上传头像,点击上传后无任何反应》,下面引用文章的部分段落:

首先看下Discuz!NT论坛的Web.config配置文件对URL重写的设置:

<httpModules>
  <add type="Discuz.Forum.HttpModule, Discuz.Forum" name="HttpModule" />
</httpModules>

然后我们在项目中打开自定义的HttpModule类(位置在Discuz.Forum/HttpModule.cs),我们找到下面这段代码(我的项目是在284行,大家自己搜索下):

else if (requestPath.StartsWith(forumPath + "upload/") || requestPath.StartsWith(forumPath + "space/upload/") || requestPath.StartsWith(forumPath + "avatars/upload/"))
{
    context.RewritePath(forumPath + "index.aspx");
    return;
}

我们可以看到"upload"、"space/upload/"和"avatars/upload/"这三个文件夹在代码中都是被屏蔽的,会重写到首页,这样就会导致原本请求的是图片的URL,但最后返回的路径却是首页的URL,导致错误的图片路径,所以这三个文件夹下的图片就打不开了。最后将这段代码做了注释或者删除,就可以正常的打开图片了。


作者:十有三

出处:https://shiyousan.com/post/635523348551379604

版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。


  • 上一篇: Discuz!NT Flash无法上传头像,点击上传后无任何反应
  • 下一篇: wp8.1预览版升级到wp8.1正式版出现0x80188308错误提示

相关文章
  • ValidateAntiForgeryTokenAttribute的验证逻辑-ASP.NET MVC防伪标记源码学习[下]
  • ASP.NET MVC 如何防御CSRF攻击(跨站请求伪造)
  • 如何禁用Visual Studio实时调试?
  • 解决网站出现GET .woff 404 (Not Found)的问题
  • (译)在 ASP.NET中使用 XML-RPC 进行ping
  • C#如何根据输入的行数打印出由*星号组成的三角形
发表评论
记住昵称

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • VS重构重命名的快捷键
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件

推荐文章

  • AntiForgeryToken生成过程解析-ASP.NET MVC防伪标记源码学习[上]
  • 记录下博客静态化的历程和经验
  • 记录一个starbound解放双手的自动挖矿技巧-使用系统自带的鼠标设置自动按住左键
  • 个人对C#控制台应用程序在运用方面的总结
  • .NET 4.5 使用async和await关键字调用异步方法

最新评论

  • 按上边的2个步骤,没有解决问题。 最后是右键
  • 不错
  • 专门过来看的,讲的很好,学到了很多。
  • 下面的隐藏按钮勾上 就不会出现了
  • 感谢分享,仅仅是加了position就生效了

友情链接

  • Passingwind的博客
  • 坤哥网
  • 码友网
  • 王政乔|中国

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号