.net Core 部署到在 CentOS7下后,验证码打不开,报The type initializer for 'Gdip' threw an exception.异常linux
运行含图片处理时发生异常:git
The type initializer for 'Gdip' threw an exception.
问题分析:github
验证码通常咱们是经过System.Drawing.Common 组件提供对GDI+图形功能的访问来实现。它是依赖于GDI+的,在windows平台下没有任何问题,自己就已经支持,Linux上没有GDI+,那么在Linux上如何使用GDI+呢?Mono 团队使用C语言实现了GDI+接口,提供对非Windows系统的GDI+接口访问能力(实质就是模拟GDI+,与系统图像接口对接),这个就是 libgdiplus。windows
解决办法:微信
1、安装一下包:微信开发
yum -y install autoconf automake libtool yum -y install freetype-devel fontconfig libXft-devel yum -y install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel yum -y install glib2-devel cairo-devel yum -y install mlocate git clone https://github.com/mono/libgdiplus cd libgdiplus ./autogen.sh make make install
一、yum -y install autoconf automake libtool框架
二、yum -y install freetype-devel fontconfig libXft-devel网站
三、yum -y install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel.net
四、yum -y install glib2-devel cairo-devel3d
五、yum -y install mlocate
六、git clone https://github.com/mono/libgdiplus
七、cd libgdiplus
八、./autogen.sh
九、make
十、make install
2、建立符号连接:
ln -s /usr/local/lib/libgdiplus.so /usr/lib64/libgdiplus.so ln -s /usr/local/lib/libgdiplus.so /usr/libgdiplus.so
3、更新一下库:
updatedb
4、从新启动.NET Core应用
5、从新登陆,便可看到验证码了。
6、登陆成功
参考文章:
.NET Core部署到linux(CentOS)最全解决方案,常规篇
.NET Core部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)
.NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
.NET Core部署到linux(CentOS)最全解决方案,入魔篇(使用Docker+Jenkins实现持续集成、自动化部署)
一网打尽,一文讲通虚拟机VirtualBox及Linux使用
全新跨平台版本.NET敏捷开发框架-RDIFramework.NET5.0震撼发布
RDIFramework.NET Web版报表管理-助力企业高效智能图表
RDIFramework.NET敏捷开发框架助力企业BPM业务流程系统的开发与落地
经过SignalR技术整合即时通信(IM)在.NET敏捷开发框架中落地
RDIFramework.NET WinForm版新增报表管理功能模块
RDIFramework.NET WinForm版新增通知公告、系统新闻模块
RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录
RDIFramework.NET敏捷开发框架 ━ 工做流程组件介绍
一文讲通.NET Core部署到Windows IIS最全解决方案
一路走来数个年头,感谢RDIFramework.NET框架的支持者与使用者,你们能够经过下面的地址了解详情。
RDIFramework.NET官方网站:http://www.rdiframework.net/
RDIFramework.NET官方博客:http://blog.rdiframework.net/
特别说明,框架相关的技术文章请以官方网站为准,欢迎你们收藏!
RDIFramework.NET框架由海南国思软件科技有限公司专业团队长期打造、一直在更新、一直在升级,请放心使用!
欢迎关注RDIFramework.NET框架官方微信公众号(微信号:guosisoft),及时了解最新动态。
使用微信扫描二维码当即关注