原创

运维文档:Web 服务器部署指南

温馨提示:
本文最后更新于 2024年07月22日,已超过 255 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

运维文档:Web 服务器部署指南

1. 概述

本文档旨在提供 Web 服务器部署的详细指南,涵盖从环境准备到服务器配置、应用程序部署以及监控等环节。

2. 环境准备

2.1 硬件需求

  • CPU:至少 2 核
  • 内存:至少 4 GB
  • 硬盘:至少 100 GB

2.2 软件需求

  • 操作系统:Ubuntu 20.04 LTS
  • Web 服务器:Nginx
  • 数据库:MySQL
  • 编程语言:Python 3.8
  • 应用程序框架:Django 3.2

2.3 工具

  • SSH 客户端
  • 文本编辑器

3. 服务器配置

3.1 安装操作系统

在虚拟机或物理机上安装 Ubuntu 20.04 LTS 操作系统。

3.2 更新系统

bash sudo apt update sudo apt upgrade -y

3.3 安装 Nginx

bash sudo apt install nginx -y

3.4 配置 Nginx

  • 修改 Nginx 默认配置文件 /etc/nginx/sites-available/default,配置虚拟主机,例如:

```nginx server { listen 80; server_name example.com; root /var/www/example.com/public;

location / {
    try_files $uri $uri/ /index.html =404;
}

} ```

  • 启用虚拟主机:

bash sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default

  • 重启 Nginx:

bash sudo systemctl restart nginx

3.5 安装 MySQL

bash sudo apt install mysql-server -y

3.6 配置 MySQL

  • 设置密码:

bash sudo mysql_secure_installation

  • 创建数据库和用户:

sql CREATE DATABASE example_db; CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';

3.7 安装 Python

bash sudo apt install python3.8 python3-pip -y

3.8 安装 Django

bash sudo pip install Django==3.2

4. 应用程序部署

4.1 创建 Django 项目

bash django-admin startproject example_project

4.2 创建应用程序

bash cd example_project python manage.py startapp example_app

4.3 配置 Django

  • 设置数据库连接信息:

python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'example_db', 'USER': 'example_user', 'PASSWORD': 'password', 'HOST': 'localhost', 'PORT': '3306', } }

  • 配置静态文件路径:

python STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static')

4.4 运行迁移

bash python manage.py makemigrations python manage.py migrate

4.5 收集静态文件

bash python manage.py collectstatic

4.6 部署应用程序

  • 将应用程序代码部署到 Web 服务器根目录:

bash cd /var/www/example.com/public cp -r example_project/static .

4.7 配置 Nginx

  • 修改 Nginx 虚拟主机配置文件,指向 Django 应用程序:

nginx location / { proxy_pass http://127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

4.8 启动 Django 应用程序

bash cd example_project python manage.py runserver 0.0.0.0:8000

5. 监控

  • 使用监控工具监控服务器资源使用情况,例如:

  • 监控 CPU 使用率、内存使用率、磁盘空间、网络流量等

  • 监控应用程序错误日志、数据库连接池状态等

  • 设置警报机制,及时发现并处理异常情况。

6. 安全

  • 定期更新系统和软件,修复安全漏洞。
  • 设置安全的密码,并定期更换密码。
  • 限制对服务器的访问权限,只允许授权用户访问。
  • 启用防火墙,阻止来自不受信任来源的连接。

7. 备份

  • 定期备份服务器数据,包括操作系统、应用程序代码、数据库等。
  • 存储备份数据到安全的存储介质,例如云存储服务或本地硬盘。

8. 附录

9. 联系方式

如需咨询或反馈,请联系 [邮箱地址]。

正文到此结束