一、创建EC2示例
1、登陆aws 官网 https://aws.amazon.com/cn/
2、创建实例:
关联一下弹性IP, 不然每次实例重启会生成新的公有IP
启动实例
二、连接实例
从本地连接:
ssh -i D:/xx.pem 用户名@IP
(D:/xx.pem---创建密钥文件存放的位置)
三、配置node、npm环境
yum 是一种在基于 RPM 包管理的 Linux 发行版中用于包管理的命令行工具。它通常用于在 CentOS、Red Hat Enterprise Linux (RHEL)、Fedora 等发行版中安装、更新和删除软件包。
1、安装node命令
sudo yum install -y nodejs
2、安装git
sudo yum install -y git
3、安装pm2
sudo yum install -y pm2
PM2 是一个用于管理 Node.js 应用程序的生产过程的流程管理器。它可以用于监视、启动、停止和重启 Node.js 应用程序,并提供了日志记录、负载均衡、热重载等功能,使得在生产环境中运行 Node.js 应用程序更加方便和可靠。
查询当前运行的所有PM2进程
pm2 list
重启
pm2 restart server
启动项目
sudo pm2 start server.js
4、从github拉取一个nextjs 项目
5、常见操作命令:(讲一下linux 命令 从本都上传到 服务器)
在服务器根目录新建一个workspace文件夹
mkdir workspace
从本地上传到服务器
scp -i D:/xx.pem /d/xx.zip ec2-user@IP:~/workspace
下载服务器文件
scp -i D:/xx.pem ec2-user@IP:/etc/XX D:/
/etc/XX------文件在服务器的位置
D:/ 下载文件存放的目录
删除 rm cert.zip
删除当前目录下所有以 .zip 结尾的 ZIP 文件:
rm *.zip
停止 Nginx 服务,再重新启动它
sudo systemctl restart nginx
查看nginx 状态
systemctl status nginx.service
重新启动服务
sudo systemctl reload nginx
移动文件到某个文件夹
sudo mv cert.zip /etc/
把文件解压到某个文件夹
sudo unzip aws.zip -d /etc/
查看隐藏文件
ls -a /path/
四: 配置域名访问
将 HTTP 请求重定向到 HTTPS
一般安装在 /etc/nginx
cd /etc/nginx
vim nginx.conf 这样没编辑权限
sudo vim nginx.conf
先按i 开启编辑模式
保存先按esc
:w 仅保存文件而不退出编辑器
:wq 则保存文件并退出编辑器
强制退出 :q!
server {
listen 80;
listen [::]:80;
server_name xx.com www.xx.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name xx.com www.xx.com;
ssl_certificate /etc/nginx/xx.pem;
ssl_certificate_key /etc/nginx/xx.key;
location / {
proxy_pass http://localhost:3000;
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;
}
}
五、设置安全组
实例点进去,查看这里的安全组,点击进去 ,设置入站和出站
点击编辑入站规则,添加80 端口和443 端口
EC2的80、443、8080端口受到限制,需要ICP备案才可以开放