阿里云服务器部署uniapp(H5)+若依SpringBoot项目一些问题及解决方案
本文已参与[新人创作礼]活动,一起开启掘金创作之路。
近期,公司有一个项目基于uniapp(H5)+springboot+Mysql+Nginx+Redis的项目,部署在了阿里云Windows服务器上,现将遇到的一些问题及解决方案总结如下:
阿里云服务器远程不上去
新开通的阿里云服务器,无法远程登录,但使用VNC(虚拟网络控制台)可以登录。
原因:默认新开通的服务器,并未配置内网Ip
解决方法:
提交工单,阿里云工程师,帮你配置内网IP。
搞不清为什么这么大的云服务提供商,竟然不默认配置好,还需要人工处理。(((φ(◎ロ◎;)φ)))
Mysql 远程速度较慢
在阿里云主机上使用phpstudy集成环境安装了MySQL,在主机访问速度没有问题,但是在远程本地访问时,连接打开数据库特别慢。但是程序的数据库连接池使用时,一旦连接建立使用上就没有问题了。
解决方法:在配置文件my.ini的 [mysqld] 下加入
skip-name-resolve
说明和提示:
原因是默认安装的MySql开启了DNS的反向解析。如果禁用的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。
H5新增功能不刷新
H5网站是通过Nginx进行部署,在微信浏览器内打开。在更新一些新的功能或页面添加一些元素后,用户的页面并未发生变化,导致还是使用原来的页面、功能。其原因在于微信浏览器默认会缓存下一些静态资源,如Html页面、CSS、JS,需要从Ngxin服务端来禁止用户缓存。
解决方法:在Nginx的配置文件中加入
#### kill cache 禁止用户浏览器缓存
add_header Last-Modified $date_gmt;
add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
if_modified_since off;
expires off;
etag off;
全部0localhost_9999.conf文件如下:
server {
listen 9999;
server_name localhost www.fuwaxindi.xyz;
root "D:/WWW";
#### kill cache 禁止用户浏览器缓存
add_header Last-Modified $date_gmt;
add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
if_modified_since off;
expires off;
etag off;
location / {
index index.html;
}
}
存在问题:这样加入禁止用户缓存后,用户每次都会请求新的数据,会导致带宽增加。
禁止请求接口缓存
缓存是先看请求地址是不是一样的,地址一样就取出缓存内容,禁止请求缓存的方法是使每次请求的URL不一样,可以在请求地址上追加随机数或追加时间的方式。
uni.request({
url: BASE_URL + options.url, //+ '?time=' + new Date()
some thing ...
})