服务器 VPS
部署应用前,为服务器配置好包管理工具,以便节省部署时间。主流的前端包管理工具有 npm、yarn、pnpm、以及国内的镜像 cnpm、tyarn 等,这些包管理器都是基于 nodejs。
通过集成了 npm 的 Node.js 来安装 npm,然后执行 npm i 命令安装其他。
全局安装 yarn 是 npm i yarn -g,pnpm 是 npm i pnpm -g。如果不想全局安装,则去除 -g。
包管理源的修改命令类似,将下方的 npm 替换 yarn 或 pnpm 即可修改包管理源。
npm、yarn 和 pnpm 的包安装及管理命令。
有些静态文件不支持直接打开,需要架构本地服务器来进行测试。
网站为了提高访问速度并保持设计的一致性,通常会选默认字体。这导致网站设计难以突出重点。针对这点,我通常会修改网站的导航栏字体,将其从默认字体改为 思源黑体 - 粗。
- 进入 iconfont‑webfont,输入导航栏内所有文字,并设置所需字体。
- 点击「生成字体」后,在选中字体的下方,点击「本地下载」。
- 将字体包上传到服务器,修改新字体的位置参数。
- 在导航栏的
class属性中添加web-font。
- 后台忘记密码,使用 Metinfo 米拓重置工具。
- metinfo 新版静态页会删除 index.html,后续都改用 index.php。
服务器 ECS
Section titled “服务器 ECS”服务器系统为 Debian 11。
更改 nginx 配置后,nginx 重载配置后实现网站重定向。$1 表示第一个 () 内的正则匹配内容,$2 为第二个。^[Nginx rewrite 设置]
全新安装服务器
Section titled “全新安装服务器”-
安装宝塔面板。
-
删除阿里云主机监控。
-
配置阿里云端口开放,导入安全规则。
-
宝塔上修改默认账号密码,并修改登录 22 的默认 SSH 端口。如果开通了 FTP,修改 FTP 端口。
-
选择「网站」>「添加站点」,将站点根目录放在 /www/wwwroot/xxx,同时新建数据库。
-
上传全站文件并解压,然后按照安装提示重新安装一次,最后导入备份数据库。
-
404.html 起效,宝塔网站配置文件中,删除
error_page 404 /404.html;中的#。 -
SSL 证书设置,开启强制 HTTPS;PHP 版本;301 重定向;添加伪静态设置(metinfo 或其他网站后台有代码)。如果 301 设置失败,直接在「伪静态」配置中,放入跳转代码。
-
服务器设置参考 NginxConfig 适合新手配置高性能、安全、稳定的 NGINX 服务器的最简单方法。
-
- 添加计划任务,定期释放内存,建议设置每天释放一次,执行时机为半夜,如:04:00。
- 打开 Linux 工具箱添加 Swap。Swap 推荐与物理内存相同。
- 安装 PHP 缓存扩展,尽量使用更高的 PHP 版本,另外安装 opcache(脚本缓存)、redis(内容缓存)、imagemagick、fileinfo、exif。
- Redis 优化,在/etc/sysctl.conf 中添加
net.core.somaxconn = 2048,然后终端运行sysctl -p。
-
防火墙白名单(自定义),如:添加 url 规则
^/rss.php到防火墙 URL 白名单,防止 rss 服务被屏蔽。
- 购买按量付费服务器。
- 用服务器迁移中心 SMC 将旧服务器同步到临时服务器。
- 将域名解析到临时系统,确定服务基本正常。
- 对旧服务器先建立云盘快照,然后更换操作系统,进行全新部署。
- 对比新旧服务器,确认配置正常。
CPU 100%
Section titled “CPU 100%”当服务器 CPU 或内存突然飙升 100% 时,依次排除当前运行进程,检查是否安装更新了插件、应用或服务。
如果找不到原因,可以临时设置定期任务。每隔 3 小时重启一次 nginx/apache。有时重启不正常,因此重启命令后 10 秒,再启动一次 nginx/apache。
SSL 证书
Section titled “SSL 证书”如果 SSL 证书部署报错,可以按自动生成来部署。
CORS 跨域
Section titled “CORS 跨域”POST 表单等操作需要涉及第三方 API,需要添加扩域域名,避免 CORS 报错。
数据库出错解决
Section titled “数据库出错解决”- mysql 配置中
mysqld在一行添加innodb_force_recovery=4,数值可以 0-6,数值越大对数据库损害越大。正常启动 mysql 后,备份所有数据库和管理密码,并下载到本地。 - 在宝塔的「数据库」中删除所有数据库,卸载并重装 mysql。
- 重新导入数据库。
piwik 手动升级
Section titled “piwik 手动升级”Matomo/Piwik 是免费的统计服务。有时无法使用自动安装包,需要手动升级。
- 下载最新版应用,并解压到服务器。
- 将原目录中的 config/config.ini.php 粘贴到新版中,然后就可以更新数据库进行升级了。
- 选择「设置」>「系统」>「地理位置」,拖到页面底部,按页面要求下载 DBIP 包,并重命名保存为
/www/wwwroot/piwik/misc/DBIP-City.mmdb。