1. 场景
作为一名前端狗,目前在前端项目开发后,部署工作一般也是我自己负责,这就涉及一些 linux 命令和 nginx 配置,以及生产环境服务器上软件的安装
2. 问题
做这些工作的频率不算很高,所以经常性的会忘记,经常性的需要 现场查、问 AI 或者 看之前的配置文件
3. 解决方案
毕竟常用到的也不多就那几个,集中记录还是好一点,还是统计记录在一个 md 里,方便后续查阅吧( 执行以下命令时没权限的话加 sudo )
复制文件
cp file.txt /usr/local移动文件
mv file.txt /usr/local编辑文件
vim file.txt开始编辑模式:
按i:在光标当前位置前插入(最常用,”insert“ 缩写)
按a:在光标当前位置后插入(”append“ 缩写)
按o:在光标所在行的下方新建一行并插入(”open“ 缩写)退出编辑模式进入命令模式:
按Esc然后
输入命令:wq保存退出命令
输入命令:q!不保存文件,强制退出
输入命令:w保存,不退出
输入命令:q退出(基本不用)解压压缩包注意点
直接使用
unzip file.zip命令,当file.zip在/zips目录下时,解压压缩包,压缩包里的内容会平铺在/zips目录下想要解压到指定目录下时,需要在后面加上
-d /path,例如:unzip file.zip -d /usr/local/targetFolder
安装软件
有网络的话直接去浏览器下载
.deb文件,或者使用命令wget https://***.deb下载,然后双击打开自动调用软件安装工具要使用命令行,或者无网络时,先拷进服务器指定目录,然后打开终端输入:
sudo dpkg -i ***.deb,一般这时候没问题了,如果有问题输入sudo apt install -f -y(自动修复缺失的依赖,避免安装失败)
nginx 配置
vue 项目刷新 404 问题
1
2
3
4location / {
# 优先匹配静态文件(JS/CSS/图片等),匹配不到则转发到 index.html
try_files $uri $uri/ /index.html;
}外部静态文件代理指向配置
1
2
3
4location /myfile/ {
alias html/myfile/;
try_files $uri $uri/ =404;
}接口代理 与 path rewrite
单纯代理
1
2
3location ^~ /api/ {
proxy_pass http://127.0.0.1:8080/;
}移除前端的自定义前缀
1
2
3
4location ^~ /myBaseUrl/ {
rewrite ^/myBaseUrl(.*)$ $1 break;
proxy_pass http://127.0.0.1:8080/;
}nginx 重启
找到可执行文件 执行
./nginx -s reload