打包部署问题
hexo 官网:hexo 官方网站
已下是部署前后端分离项目时,需要注意的一些点。
1.修改 mysql 数据库的用户名和密码
一般本地测试的mysql数据库与服务器数据库的账号密码不一样,所以在发布时需要修改一下。
2.修改 redis 密码
一般本地redis没有密码,而服务器的redis需要设置密码。
3.修改端口
自己测试可能端口是默认的8080,但放服务器上可能有冲突。
4.修改图片存储路径
一般存放路径为绝对路径,本地如果是windows系统,而服务器是linux系统,则上传图片时会报错。
5.在服务器运行 jar 包
先 cd 到 jar 包的存放路径。如 cd /www/wwwroot/
然后运行nohup java -jar myblog.jar >log/myblog.log 2>&1 &
再运行 nginx.
/www/server/nginx/sbin/nginx -c /www/server/nginx/conf/nginx.conf
记得查看/www/server/nginx/conf/nginx.conf
内的root
根目录,看看 dist 目录放到哪里
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
| user www;
worker_processes auto;
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
multi_accept on;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
client_max_body_size 100m;
#用于tomcat反向代理,解决nginx 504错误
proxy_connect_timeout 7200; #单位秒
proxy_send_timeout 7200; #单位秒
proxy_read_timeout 7200; #单位秒
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
# ps:以timeout结尾配置项时间要配置大点
server{ listen 443 ssl; server_name ygapi.asia www.ygapi.asia; add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"; ssl on; ssl_certificate /www/server/panel/vhost/cert/ygapi.asia/ygapi.asia_bundle.pem; ssl_certificate_key /www/server/panel/vhost/cert/ygapi.asia/ygapi.asia.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on;
location / {
root /home/dist;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html { root html; } }
server { listen 80; server_name ygapi.asia www.ygapi.asia;
location / { root /home/dist; proxy_redirect https:// http://; return 301 https://www.ygapi.asia;
} }
}
|
查看 nginx 进程
ss -ntlp | grep nginx
干掉所有 nginx 进程
killall nginx
hexo 初始使用
以下是 hexo 的入门使用。
1.安装 hexo
npm install -g hexo-cli
2.初始化 hexo
创建一个文件夹,我这里命名为 blog,进入该文件夹,右键 git bash。
3.运行 hexo
运行上述命令后,会有如下提示:
1 2 3
| INFO Validating config INFO Start processing INFO Hexo is running at http://localhost:4000/ . Press Ctrl+C to stop.
|
这里的链接是博客地址,ctrl+c 会终止程序运行。
4.新建博客
运行之后,会在 /blog/source/_posts/
文件夹下创建一个”我的第一篇博客.md”文件。
5.编辑博客内容
格式为 markdown 的内容,根据自己的情况编写。
6.生成预览
1 2 3
| hexo clean hexo g hexo s
|
上面代码分别输入,分别代表清理博客-生成博客-预览博客
附上 hexo 常用命令——戳我进入
2023-03-14 20:42 补充
7.使用图片
想要在博客上放图片,就得用 markdown 语法的 ![]()
,其中图片的存放路径是一个不可忽视的问题。
这里我先更改一下 config.yml
文件的配置:
当该配置被应用后,使用 hexo new 命令创建新文章时,会生成相同名字的文件夹,也就是文章资源文件夹。
由于项目会生成新的文件目录,同时会解析 Markdown 中的图片路径,会导致一个问题。
如在一个文件目录下,博客名为 1.md,相应的存在一个 1 文件夹存放图片 image.jpg。
在 Typora 编辑器中,普通的 md 文件使用
能在编辑器中正常显示图片。
在 hexo 中,按理说应该是使用
,但网页中却无法正常显示。
此时应该使用这样的方式来引入图片:{% asset_img image.jpg 这是一张图片 %}
虽然可以正常引用图片了,但是这种引用图片的方式只有一句话能形容,wtf。
插件 hexo-renderer-marked 解决了这个问题。用如下命令安装:
1
| npm install hexo-renderer-marked
|
之后在config.yml
中更改配置:
1 2 3 4
| post_asset_folder: true marked: prependRoot: true postAsset: true
|
上面的 post_asset_folder: true
已经改过,所以只需要修改(添加)下面的 marked
就行了。
__END__