💻 从买服务器到搞定一切:帮朋友搭建企业技术基建!(二)🚀

通过上一篇文章中的准备,我们已经有了云服务器、域名、也通过了域名备案和ICP备案等。下面目标发布一个公网可通过域名和HTTPS访问的网页。通过本文记录一下。

一、设置 SSH KeepAlive

我是通过MobaXterm,连接服务器的,服务器本身默认100s左右断开。下面通过一些设置,让SSH保持连接:

  1. /etc/ssh/sshd_config 中添加以下配置,并重启 SSH 服务:
conf 复制代码
ClientAliveInterval 60
ClientAliveCountMax 5
  1. 重启SSH服务
conf 复制代码
service ssh restart           # Ubuntu
service sshd restart          # CentOS 7

二、Nginx安装 & 配置

选择Nginx作为Web服务器,下面进行安装和配置

2.1 安装Nginx

先更新软件包列表,确保系统的包管理器是最新的:

bash 复制代码
apt update

再安装Nginx(-y 是apt的参数,表示自动确认,因为安装前会询问Do you want to continue? -y就无需手动确认)

bash 复制代码
apt install nginx -y

2.2 启动 Nginx 并设置开机自启

bash 复制代码
systemctl start nginx
systemctl enable nginx

2.3 验证 Nginx 是否已启动

bash 复制代码
sudo systemctl status nginx

正常运行时应看到 active (running) 状态。

三、云服务器安全组开放http(80)端口

我们尝试通过浏览器访问 http://{{ip}},会发现访问不了:

但是在服务器上通过curl -I http://localhost可以访问:

这是因为云服务器的安全组没有开发http(80)端口,快速添加一下:

操作成功后再次浏览器访问http://{{ip}}即生效:

三、Nginx配置页面路径

我希望把前端项目文件架丢上去后就可以通过相关路径访问,所以用到了 $uri(表示请求路径):

conf 复制代码
server {
    listen 80;
    listen [::]:80;

    root /var/www/html; # 指定 HTTP 根目录
    index index.html;

    location / {
        try_files $uri $uri/ =404; # 处理 HTTP 请求
    }

    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

效果是:

  • 通过 http://{{ip}}/a/b/c.html 会访问到 /var/www/html/a/b/c.html
  • 通过 http://{{ip}}/a/b/c 会访问到 /var/www/html/a/b/c/index.html
  • 找不到则 返回默认的 /40x.html

四、配置DNS域名解析

想要通过域名访问web服务,在阿里云域名控制台进行如下DNS解析设置:

测试生效。

五、支持HTTPS访问

我想要让网站既支持http访问也支持https访问,之前了一篇免费获取SSL证书并进行Nginx配置的文章(《永久免费!如何使用 Certbot 为域名配置永久免费的 HTTPS 证书》),直接参考操作即可。


经过上面的配置,现在可以通过 https://域名 访问web服务了。

相关推荐
白气急6 分钟前
别用“设计感”掩盖无知:从一次 null == 0 的事故说起
后端
疏狂难除14 分钟前
随便玩玩lldb (二)
开发语言·后端·rust
京东零售技术18 分钟前
DongSQL数据库内核V1.1.0介绍
后端
LibSept24_35 分钟前
会议透镜(Meeting Lens):基于 Rokid CXR-M 的 AI 会议纪要实战
后端
课程xingkeit与top36 分钟前
高性能多级网关与多级缓存架构落地实战(超清完结)
后端
丸子哥哥37 分钟前
同一个域名,如何添加多个网站?
服务器·前端·nginx·微服务
课程xingkeit与top40 分钟前
SpringBoot2 仿B站高性能前端+后端项目(完结)
后端
课程xingkeit与top42 分钟前
AI Agent智能应用从0到1定制开发(完结)
后端
Carve_the_Code1 小时前
分布式订单系统:订单号编码设计实战
java·后端
语落心生1 小时前
探秘新一代向量存储格式Lance-format (二十八) 性能优化技巧
架构