常见问题解决方案
1、docker 安装 redis
1.1 首先在 opt
下创建 redis
目录,用于存放redis的数据和配置文件
mkdir /opt/redis
cd /opt/redis
1.2 创建redis的配置文件,并写入配置
vim redis.conf
# 是否持久化
appendonly yes
# 设置密码
requirepass admin
1.3 拉取镜像,默认是最新版
docker pull redis
1.4 启动Redis容器,指定使用的配置文件 redis-server /etc/redis/reids.conf
,默认是不使用配置文件
docker run -p 6379:6379 -d --name redis-6379 -v /opt/redis/data:/data -v /opt/redis/redis.conf:/etc/redis/redis.conf redis redis-server /etc/redis/redis.conf
2、base64编码 出现\r\n 换行符
2.1 概述
Base64是一种字符串编码格式,Base64采用A-Z a-z 0-9 “+“ “/“这一共64个字符来编码原始字符(还有垫字符“=“)。一个字符本身是1个字节,也就是8位,而Base64编码后的一个字符只能表示能表示6位的信息。也就是原始字符串中3字节的信息编码会变成4字节的信息。Base64的主要作用是满足MIME传输需求,在传输过程中都是用ASCII支持的可见字符。Base64是基于字节的编码,所以不同字符集下的相同字符在Base64下可能有着不同编码
2.2 问题描述
将编码后的字符串输出后发现字符串中存在换行符
2.3 问题分析
根据RFC822规定,BASE64Encoder编码每76个字符,还需要加上一个回车换行,部分Base64编码的java库还按照这个标准实行
2.4 解决
2.4.1 导入jar包
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.15</version>
</dependency>
2.4.2 编写代码
Base64.encodeBase64String(byte[] binaryData);
3、中文转unicode编码
javascript脚本
// 转为unicode 编码
function encodeUnicode(str) {
var res = [];
for ( var i=0; i<str.length; i++ ) {
res[i] = ( "00" + str.charCodeAt(i).toString(16) ).slice(-4);
}
return "\\u" + res.join("\\u");
}
4、Windows彻底停止 nginx服务
taskkill /f /t /im nginx.exe