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

通过上一篇文章中的准备,我们已经有了云服务器、域名、也通过了域名备案和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服务了。

相关推荐
Aska_Lv20 分钟前
mybatis+springboot+MySQL批量插入 1w 条数据——探讨
后端·架构
考虑考虑39 分钟前
UNION和UNION ALL的用法与区别
数据库·后端·mysql
桂月二二1 小时前
云原生Serverless平台:无服务器计算的架构革命
云原生·架构·serverless
Wgllss1 小时前
金三银四,分享N年前准备的面试真经,可能适用绝大部分人
android·架构·android jetpack
sd21315121 小时前
springboot3 spring security+jwt实现接口权限验证实现
java·后端·spring
m0_748248021 小时前
Spring Boot 集成 MyBatis 全面讲解
spring boot·后端·mybatis
qq_447663051 小时前
《Spring日志整合与注入技术:从入门到精通》
java·开发语言·后端·spring
源码姑娘1 小时前
基于SpringBoot的智慧停车场小程序(源码+论文+部署教程)
spring boot·后端·小程序
Seven971 小时前
【设计模式】使用中介者模式实现松耦合设计
java·后端·设计模式
Seven971 小时前
【设计模式】探索状态模式在现代软件开发中的应用
java·后端·设计模式