ubuntu-学习笔记-nextjs部署相关
nextjs部署
- 通过域名访问项目异常
- ubuntu经常夯住
- 高BPS,高占用
- 无法连接,ssh和ftp
- mysql不知道为什么宕掉了
是的又是我
事情的起因是这样的, 我和往常一样在nextjs中写前端,然后打包,本地跑没有任何问题
通过域名访问项目异常
挂在服务器上通过域名访问项目就是会出现www.xxx.com_next/static/chunks/xxxx.js
的异常,导致项目无法正常使用
通过AI提问,发现可能是静态资源访问的问题,之前的代码中没有加载过_next/static资源的东西,所以没有注意到,这次新加了写代码,用到了这个路径,但是在nginx中没有配置相关的信息,所以通过域名访问时,就出现了问题
再提一嘴,通过ip+端口号的形式去访问又是正常的,确实搞不懂是为啥,先以解决问题为主吧
nginx配置
server {
listen 80;
server_name 你的域名;
# 设置根目录为 Next.js 构建输出的目录
root /path/to/your/project/.next;
# 处理静态文件
location /_next/static/ {
# 启用静态文件缓存
expires 1y;
add_header Cache-Control "public, max-age=31536000, immutable";
# 如果使用了 output: 'standalone' 配置,应该指向正确目录
alias /path/to/your/project/.next/static/;
# 确保正确的 MIME 类型
include /etc/nginx/mime.types;
default_type application/octet-stream;
# 打开目录列表,有助于调试
autoindex on;
autoindex_exact_size off;
}
# Next.js 应用程序的其他部分
location / {
proxy_pass http://localhost:9001; # 确保这是 Next.js 运行的端口
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
上面的代码已经写的很清楚了,配置之后然后重启nginx,应该就没问题了
如果还有问题,记得清掉缓存再试试,也可以再检查一下后端调用之类的是不是正常的
ubuntu经常夯住
高BPS,高占用
最近一到凌晨的时候就经常高bps(读写),有时候是高占用
问了阿里云客服,一开始说是apt相关的内容在凌晨的时候会自动更新啥的比较占用内存,所以让他关了,他让我重启
刚重启的时候是好了一些
但是后面又发现了问题
无法连接,ssh和ftp
这是重启之后遇到的问题,还是问了客服,客服说是因为之前在ubuntu中安装了图形化界面相关的组件,在使用,所以导致有时候会连不上
所以让客服(凌晨1点)帮我卸载了相关的东西。真的是好人
mysql不知道为什么宕掉了
卸载了图形化界面之后,我的mysql不知道为什么突然就不能启动了
ysql.service: Start request repeated too quickly.
mysql.service: Failed with result 'exit-code'.
Failed to start MySQL Community Server.`
信息如上,问了AI,AI说是先查看一下mysql日志
sudo tail -n 100 /var/log/mysql/error.log
发现提示
Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files
于是照着AI的提示创建相关的文件夹,然后开发755权限,然后重启mysql
成功
服务器啊,真是太痛苦了555