`

.net core Linux ( Centos 7 ) 下 验证码图片显示不出来, 或者乱码【转】

 
阅读更多
在 Linux 命令行运行:

dotnet Web.dll  # dll文件名 自己换
(注意:不要用 nohup dotnet Web.dll 在后台运行,后台运行看不到异常)

再来访问登录界面, 此时验证码看不到, Linux 下提示: “Unable to load shared library 'gdiplus'” .

#1. 安装 glib-2.0
yum install libgnomeui-devel


#2. 安装 libgdiplus
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-5.6.tar.gz
tar -zxf libgdiplus-5.6.tar.gz
cd libgdiplus-5.6
./configure --prefix=/usr
make
make install

或者直接按: https://github.com/zkweb-framework/zkweb.system.drawing的做法:

yum install autoconf automake libtool
yum install freetype-devel fontconfig libXft-devel
yum install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel
yum install glib2-devel cairo-devel
git clone https://github.com/mono/libgdiplus
cd libgdiplus
./autogen.sh
make
make install
cd /usr/lib64/
ln -s /usr/local/lib/libgdiplus.so gdiplus.dll

安装完, 再运行, 会发现验证码出来了, 但有乱码:

验证码乱码的解决
主要是解决字体问题。

在生成验证码的代码中, 关于字体的有一行:

string[] font = { "Times New Roman" };

所以先在 Windows 系统中找到:


复制到 Linux 中的 /usr/share/fonts/micro/ 下

mkdir /usr/share/fonts/micro/
cd /usr/share/fonts/micro/

# 字体文件复制到这个文件夹, 略
fc-cache  #重新加载字体
再重新执行 dotnet Web.dll , 验证码正常了。
原文地址:http://joeychou.me/blog/71.html


PS:
在实际使用过程中,图片不显示按照文章所述进行了安装,重新加载方案还是无法显示图片,崩溃。
后来又不停的搜索,最后找到解决方法:

yum install libgdiplus-devel

安装后,重新启动项目一次成功,泪奔! 在此感谢作者分享:
原文标题:.NET Core项目在Linux上使用QRCoder时出错"Unable to load DLL 'gdiplus'"
https://blog.csdn.net/weixin_34258838/article/details/86016145



分享到:
评论

相关推荐

    将ASP.NET Core应用程序部署至生产环境中(CentOS7).pdf

    将ASP.NET Core应用程序部署至生产环境中(CentOS7) 将ASP.NET Core应用程序部署至生产环境中(CentOS7) 将ASP.NET Core应用程序部署至生产环境中(CentOS7)

    【ASP.NET编程知识】.Net Core WebApi部署在Linux服务器上的方法.docx

    在这里,我们选择 CentOS 7 - x64 的版本,然后执行安装命令,安装 .NET Core 环境。 上传启动项目 使用 pscp 软件上传项目文件到服务器上,然后执行 dotnet 命令,启动项目。 Nginx 安装 Nginx 是一个高性能的 ...

    centos7下Oracle12中文乱码的问题

    替换oracle解压之后的database文件中的filegroup2文件 路径 :database/stage/Components/oracle.jdk/1.6.0.75.0/1/DataFiles

    linux下java生成图片乱码问题.doc

    总之,解决Linux下Java生成图片中文乱码问题的关键在于确保系统中有合适的中文字体,并使Java应用程序能够正确访问这些字体。通过安装fontconfig和相应的中文支持包,以及重启服务,可以有效地解决这一问题。在实际...

    Linux dotNET环境部署.zip_Linux .net_linux dotnet部署

    在Linux环境下部署.NET框架是将Microsoft的.NET技术应用于开源操作系统的一种方法,这使得开发者能够在Linux系统上构建、运行和管理.NET应用程序。以下是一份详细的Linux .NET环境部署指南,涵盖了关键知识点: 1. ...

    centos下使用docker部署.net core项目.docx

    CentOS 下使用 Docker 部署 .NET Core 项目 本文将详细介绍如何在 CentOS 系统中使用 Docker 部署 .NET Core 项目,涵盖 Docker 的安装、 .NET Core 程序的安装、Nginx 的配置等重要知识点。 一、基本知识储备 在...

    mqf-Linux-CentOS6.8安装

    【Linux-CentOS6.8 安装详解】 在虚拟化环境中安装Linux操作系统,特别是CentOS 6.8,是一项常见的任务,对于学习和工作都有着重要作用。本文将详细阐述如何在VMware Workstation Pro 12上进行安装,以及安装过程中...

    asp.net core部署在linux(centos)环境搭建手册.docx

    本篇将详细讲解如何在Linux(CentOS 8.2 64bit)环境下部署ASP.NET Core应用,并结合MySQL作为数据库。 **1. ASP.NET Core应用版本准备** 确保你的应用基于.NET Core 5.0进行开发。此版本提供了许多性能优化和新特性...

    阿里云CentOs部署Asp.Net Core 详细步骤

    "阿里云CentOS部署Asp.Net Core 详细步骤" 本文将详细介绍如何在阿里云的 CentOS 操作系统上部署 Asp.Net Core 应用程序。我们将从安装准备开始,到部署和配置运行环境,最后实现外网访问。 一、安装准备 在开始...

    Centos7+Docker+Jenkins+ASP.NET Core 2.0自动化发布与部署的实现

    Centos7+Docker+Jenkins+ASP.NET Core 2.0自动化发布与部署的实现

    Linux CentOS下shell显示-bash-4.1$不显示用户名路径.docx

    Linux CentOS 下 shell 显示-bash-4.1$ 不显示用户名路径解决方法 Linux CentOS 作为一款流行的服务器操作系统,在实际应用中常常需要配置 shell 显示用户名路径。然而,在某些情况下,shell 显示-bash-4.1$ 不...

    专治Web项目部署CentOS验证码出不来.txt

    java web项目部署到CentOS后,导致验证码不能正常显示,找了很多方法翻了很多资料,最终得以解决。

    .NET Core 跨平台实战(含源码).pdf

    ### .NET Core 跨平台实战知识点解析 #### 一、.NET Core 概述与特点 .NET Core 是 Microsoft 推出的一个开源、轻量级、跨平台的开发框架,适用于构建不同类型的应用程序,如 Web 应用、命令行应用等。它支持多种...

    ASP.NET Core应用程序部署至生产环境中(CentOS7)

    ### ASP.NET Core应用程序部署至生产环境中(CentOS7) #### 环境说明与准备工作 在部署ASP.NET Core应用程序到CentOS 7.2.1511的生产环境中,首先需要确保具备以下条件和环境: - **服务器系统**:CentOS 7.2....

    linux centos7 离线安装telnet_b13001216978的博客-CSDN博客_linux离线安装telnet1

    在Linux CentOS 7环境下,离线安装telnet是一项常见的任务,尤其在无法访问公网的服务器上。本教程将详细介绍如何通过RPM包进行离线安装。以下是一个详细步骤的指导: 1. **检查已安装软件包**: 使用`rpm`命令来...

    linux centos 7 pyCrypto模块安装指指导文档.pdf

    【Linux CentOS 7 pyCrypto模块安装】 在Linux CentOS 7操作系统中,pyCrypto是一个非常重要的Python库,它提供了各种加密算法,如AES、RSA等,常用于数据的安全传输和存储。在开发Python应用时,特别是在涉及到...

    centos下安装openoffice及解决菜单中文乱码

    在CentOS 6.4环境下安装OpenOffice及解决中文乱码问题是一项常见但又复杂的任务,涉及到了软件的安装、字体管理以及环境配置等多个方面。本文将基于提供的标题、描述、标签以及部分内容,深入探讨这一过程中的关键...

    Linux Centos系统安装手册

    Linux Centos系统安装手册主要涉及了Linux Centos系统安装的介质和方式,以及具体的安装步骤。以下是手册中涉及到的一些关键知识点: 1. Linux Centos系统安装介质和方式: - 双系统安装:这指的是在一台电脑上...

    处理linux java图片中文字显示方块乱码

    java——图片字体显示方块问题处理 /usr/java/jdk1.7.0_80/jre/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf /usr/java/jdk1.7.0_80/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf

Global site tag (gtag.js) - Google Analytics