简单记录,方便用的时候翻,不是详细的教程,所以不会记录的很详细。

部署网页

利用docker可以更方便的部署,安装好docker后:

docker run -d \
  -p <宿主机上映射的端口>:80 \
  -v <宿主机上数据卷的位置>:/usr/share/nginx/html \
  --name <容器名称> \
  nginx:latest

成功创建之后,把index.html放到对应的数据卷位置,再开启云服务器对应的端口即可通过ip:端口的方式访问了。

反向代理

通过域名解析+反向代理可以用子域名来解析到这个网页。

先到阿里云的云解析DNS界面添加一个解析,主机记录就写想解析的子域名,记录值就写想解析到的IP地址。

因为解析只能解析到IP,不能指定端口,所以如果我们这一个服务器的ip上有很多不同的网页的话,就需要用nginx反向代理来根据子域名转发到不同的端口。

这个nginx就不用docker了,直接用apt装在了服务器上。

然后修改nginx的配置文件,一般是在/etc/nginx/sites-available/defaultsudo vim进入修改。根据需要修改下面的内容然后添加到里面。

upstream gpus_web {
  server 127.0.0.1:15001;
}
server {
  listen 80;
  listen [::]:80;
  server_name gpus.lxblxb.top;
  client_max_body_size 1024m;
  location / {
    proxy_pass http://gpus_web;
    proxy_set_header HOST $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}
  • 两个gpus_web是对应的,可以修改,相当于变量。然后其实不写upstream那个,直接把ip:端口写道下面proxy_pass也是可以的。

  • server_name就是检测进来的域名,这里就是判断进来的是如果是gpus.lxblxb.top 的(根据需求修改)。

  • proxy_pass就是要转发到哪,这里相当于就是转发到本机的15001端口(根据需求修改)。

  • listen就是监听的端口,因为网页进来时默认访问80,所以这里是80。

设置完之后保存,执行下面的命令运行。

sudo nginx -t # 检查语法错误
sudo systemctl reload nginx # 重新加载使得配置生效

然后使用子域名就可以访问到部署的网页了。