1. 程式人生 > >專案部署到阿里雲 登入頁面圖形驗證碼亂碼

專案部署到阿里雲 登入頁面圖形驗證碼亂碼

有時java專案部署到阿里雲機器上,登入頁面的圖形驗證碼有可能是亂碼,如下圖所示


分析了java中生成驗證碼的方法

String s = RandomStringUtils.random(4, true, true);
			// 儲存入session,用於與使用者的輸入進行比較.
			// 注意比較完之後清除session.
			HttpSession session = request.getSession(true);
			session.setAttribute(Constants.AUTH_CODE, s);

			response.setContentType("images/jpeg");
			//response.setContentType("images/jpeg,charset=utf-8");
			response.setHeader("Pragma", "No-cache");
			response.setHeader("Cache-Control", "no-cache");
			response.setDateHeader("Expires", 0);

			ServletOutputStream out = response.getOutputStream();
			BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
			Graphics g = image.getGraphics();
			// 設定背景色
			g.setColor(getRandColor(200, 250));
			g.fillRect(0, 0, width, height);

			// 設定字型
			Font mFont = new Font("Times New Roman", Font.BOLD, 22);// 設定字型
			g.setFont(mFont);

注意到Times New Roman這個字型,亂碼的原因就是阿里雲機器上沒有這種字型,

解決方法 把本機上的這個字型上傳到伺服器

本機字型目錄 C:\Windows\Fonts,如下圖

上傳到linux伺服器上的jre/lib/fonts目錄下,如下圖


然後重啟tomcat,問題解決。


相關推薦

專案部署阿里 登入頁面圖形驗證亂碼

有時java專案部署到阿里雲機器上,登入頁面的圖形驗證碼有可能是亂碼,如下圖所示 分析了java中生成驗證碼的方法 String s = RandomStringUtils.random(4, true, true); // 儲存入session,用於與使用者的輸

web專案部署阿里伺服器及mysql資料庫連線部署

個人web專案釋出到伺服器並能通過外網進行訪問 1、專案打包釋出 依次點選Build——>Build Artifacts——>All Artifacts-->Build; 打包完成 後會在你指定的專案路徑下生成.war檔

Djang專案部署阿里伺服器(四)之執行Django專案

完成之前的操作只能在你執行python3 manage.py runserver 0.0.0.0:8000的情況下大家才能訪問,如果關閉,則不能繼續訪問,顯然這並不符合我們的需求!所以,我們還要進行以下

java spring 實現登入頁面新增驗證

from 表單: <div class="block">     <p class="block-heading">使用者登入</p>     <div class="blo

java實現登入頁面驗證功能

我們訪問電商網站,登入賬號時。都需要驗證碼的輸入。那麼在java中,我們是如何實現驗證碼的呢?這裡,我用servelet做個demo。 程式碼清單: package com.test; import java.awt.Color; import java.

JSP登入頁面包括驗證驗證

login.jsp,程式碼如下: [plain] view plain copy  print? <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>   <%   String path =

記一次服務釋出之後,圖形驗證亂碼的服務排查

由於業務拓展,新買了臺系統為centOS7的伺服器,配置完jdk和nginx之後,將服務釋出到伺服器上並部署啟動,然後重新整理頁面,神奇的事情就出現了:第一個想到的問題,就是進行本地除錯,發現一切正常;於是在生成驗證碼文字的地方加上了logger輸出,再次釋出程式到伺服器上,

部署靜態專案阿里的CentOS系統過程

使用的工具 XShell和WinSCP:它們都是用來在windows下遠端操作linux伺服器的工具,XShell使用命令列配置,WinSCP可以將windows本地檔案複製到linux系統中去。 第一步:下載並安裝jdk 本部落格使用的jdk是oracle公司的1.8版本: htt

部署專案阿里

一、購買阿里雲伺服器 如果你是學生,或者曾經認證過學生並且年齡沒有超過24歲,那麼你就可以9.9元購買到阿里雲的伺服器,非常給力!購買地址—>阿里的雲翼計劃 購買伺服器例項(配置跟我一樣選擇好就行了) 點選伺服器管理下面的重置密碼,設定好(密碼一定要記住)之後記得重啟一下

Java專案整合阿里SMS簡訊介面傳送驗證

public static Map MessageExecuteMethod(String mobile) throws ClientException { //設定超時時間-可自行調整 System.setProperty(“sun.net.client.defaultConnectTim

python Django專案阿里部署

. Python Django專案的阿里雲部署 . 當時因為專案的需要,就是將 python 的 Django 專案部署到阿里雲伺服器上。藉此機會學習了一下,並記錄了部署的步驟。想著除了分享之外,更多的是以後自己也可以回來感受一下當時部署阿里雲的艱辛,不過現在會

部署專案阿里

專案結構 服務端系統:centos7 專案框架:spring boot2.0 資料庫:mysql8.0 快取: redis4.0 開發環境 macos 準備 一個阿里雲的賬號,並且購買了一個或多個服務例項。 準備專案部署環境 將專案打成jar包 部署專案並執

使用Servlet實現圖形驗證登入頁面

1.介紹 首先需要寫一個生成圖形驗證碼的Servlet: 我這裡的Servlet為:createImageServlet 然後我們使用登入頁面來驗證是否能獲取圖形驗證碼。 登入後通過Servlet判斷使用者名稱密碼是否為張三和123(這裡簡單操作就不連線資料庫了) 登入頁面

阿里】node.js部署專案阿里ECS(CentOS 7),並實現nginx域名繫結

一、購買阿里雲伺服器 >方法一 1.1、如果你是學生的話,就可以買阿里雲的學生優惠套餐,才9.5元一個月,挺划算的 1.2、搭建伺服器的系統的話,我選用的是 Centos 7.3系統映象 CentOS(Community Ent

Python3.6 使用 Docker 快速部署 Django2.0 專案阿里伺服器上

一、前言 二、常規操作 預設你已經安裝好 docker 2.1.示例專案基本結構 其實是使用 PyCharm 剛剛建立的 Django 空專案 2.2.dockerfile FROM python:3.6 這裡指定 Python

IDEA maven打包專案阿里伺服器Tomcat部署流程

1.購買阿里雲伺服器和使用(簡略) 有意購買伺服器的朋友可以領取優惠券再購買哦,最高1000元優惠呢,優惠券地址: 本人選擇的是輕量級應用伺服器,如果你喜歡也可以選擇另一個,環境選擇系統映象--Windows Server 2012...--華南 當然,系統

uwsgi+nginx+Ubuntu部署Django專案阿里

如果使用預設的python   首先安裝程式需要的包apt-get install python-devapt-get install python-pipapt-get install net-toolsapt-get install lsof安裝資料庫apt-get in

Jfinal框架登陸頁面圖形驗證

ima 獲得 希望 刷新 body 是否 異步刷新 tor console 本文轉自,http://www.bubuko.com/infodetail-720511.html 驗證碼的工具類, 這個jfinal自帶的也有,但是下面這個和Jfinal自帶的有一點點小的改動

java圖形驗證生成工具類及web頁面校驗驗證

組合 line des resp word buffere 需要 case ali 最近做驗證碼,參考網上案例,發現有不少問題,特意進行了修改和完善。驗證碼生成器:[ht

J2ee專案部署伺服器

J2ee專案部署到雲伺服器 前言: 此文為在windows下部署雲伺服器,大家應在本地電腦成功的部署過j2ee專案前提下來看本文。 第一步: 在阿里雲或騰訊雲購買一臺伺服器(可選擇windows或linux系統,根據需要),購買完後就像在自己的主機上一樣了,接下來開始環境的搭建。