mysql 8.0单机版的部署
具体部署过程遗漏了,直接找到mysql的链接,使用wget命令将mysql的包down下来。
并且设置了开机自动启动,mysql密码进行了修改。
redis 单机版部署
redis的部署会简单一些,正常部署后,会在目标目录生成redis.conf文件。在/usr/local/redis/…目录下,会有一个redis-client与redis-server文件。
首先修改redis.conf,将protect模式修改为no。随后使用命令 ./redis-client 启动redis-client(务必指定redis.conf)。启动后即可正常访问。
目前的部署架构如图所示:
关于两次md5验证
适用于登录场景的开发,在实际开发过程中,账号密码不可能直接明文进行信息交互,所以必须将用户输入的密码进行md5加密。
加密Java工具类代码如下:
public class MD5Util {
public static String md5(String src) {
return DigestUtils.md5Hex(src);
}
private static final String salt = "1a2b3c4d";
public static String inputPassToFormPass(String inputPass) {
String str = ""+salt.charAt(0)+salt.charAt(2) + inputPass +salt.charAt(5) + salt.charAt(4);
System.out.println(str);
return md5(str);
}
public static String formPassToDBPass(String formPass, String salt) {
String str = ""+salt.charAt(0)+salt.charAt(2) + formPass +salt.charAt(5) + salt.charAt(4);
return md5(str);
}
public static String inputPassToDbPass(String inputPass, String saltDB) {
String formPass = inputPassToFormPass(inputPass);
String dbPass = formPassToDBPass(formPass, saltDB);
return dbPass;
}
加密前端代码如下:
function doLogin(){
g_showLoading();
const inputPass = $("#password").val();
const salt = g_passsword_salt;
const str = "" + salt.charAt(0) + salt.charAt(2) + inputPass + salt.charAt(5) + salt.charAt(4);
const password = md5(str);
console.log('密码日志:'+password)
$.ajax({
url: "/login/do_login",
type: "POST",
data:{
mobile:$("#mobile").val(),
password: password
},
success:function(data){
layer.closeAll();
if(data.code == 0){
layer.msg("成功");
window.location.href="/goods/to_list";
}else{
layer.msg(data.msg);
}
},
error:function(){
layer.closeAll();
}
});
}