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

通过上一篇文章中的准备,我们已经有了云服务器、域名、也通过了域名备案和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 小时前
Go语言实战案例 — 工具开发篇:实现一个图片批量压缩工具
后端·google·go
程序员不迷路7 小时前
湖仓一体学习-数据架构演进路线
架构
ChinaRainbowSea8 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
舒一笑8 小时前
同步框架与底层消费机制解决方案梳理
后端·程序员
stormsha8 小时前
飞算JavaAI炫技赛电商系统商品管理模块的架构设计与实现
java·架构·鸿蒙系统
minh_coo8 小时前
Spring框架事件驱动架构核心注解之@EventListener
java·后端·spring·架构·intellij-idea
白初&9 小时前
SpringBoot后端基础案例
java·spring boot·后端
海上生明月丿11 小时前
微服务02
微服务·架构
RestCloud11 小时前
iPaaS 与传统 ESB 的区别,企业该如何选择?
前端·架构
荣光波比11 小时前
Nginx 实战系列(七)—— Nginx一键安装脚本详解
运维·nginx·自动化·云计算