Nginx 是一个非常流行的 Web 服务器和反向代理服务器

Nginx 是一个非常流行的 Web 服务器和反向代理服务器,以其高性能、稳定性、丰富的功能集和低资源消耗而闻名。下面是一个简化的 Nginx 使用教程,包括基本的安装、配置和一些常见用途。

安装 Nginx

在 Ubuntu/Debian 上安装:
bash 复制代码
sudo apt update
sudo apt install nginx
在 CentOS/RHEL 上安装:
bash 复制代码
sudo yum install epel-release
sudo yum install nginx

启动和管理 Nginx

启动 Nginx:

bash 复制代码
sudo systemctl start nginx

检查状态:

bash 复制代码
sudo systemctl status nginx

重启 Nginx:

bash 复制代码
sudo systemctl restart nginx

基本配置

Nginx 的主配置文件通常位于 /etc/nginx/nginx.conf。配置文件包含多个上下文,如 httpserver。下面是一个简单的 server 块示例:

nginx 复制代码
server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/html;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

虚拟主机配置

可以为不同的域名设置多个虚拟主机。通常,这些配置保存在 /etc/nginx/conf.d//etc/nginx/sites-available/ 目录中,并通过符号链接激活它们到 /etc/nginx/sites-enabled/

反向代理

Nginx 可以作为反向代理服务器,用于负载均衡或隐藏后端服务器。例如,以下配置将所有请求代理到后端的 PHP-FPM 服务:

nginx 复制代码
location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}

SSL/TLS 配置

要启用 HTTPS,需要在 server 块中添加 SSL 相关指令:

nginx 复制代码
listen 443 ssl;
ssl_certificate /path/to/your/certificate.pem;
ssl_certificate_key /path/to/your/private.key;

日志和错误处理

Nginx 会记录访问日志和错误日志。默认情况下,日志文件位于 /var/log/nginx/access.log/var/log/nginx/error.log

进一步学习

以上只是一个非常基础的指南,Nginx 的功能远比这丰富得多。对于更高级的功能,如负载均衡、缓存、流媒体传输、API 网关等,你需要深入学习官方文档和各种在线资源。如果你有任何具体问题或需要更详细的帮助,请随时告诉我!

相关推荐
程序员黑豆1 天前
鸿蒙应用开发:一次开发多端部署之响应式布局完全指南
前端·harmonyos
小月土星1 天前
2.0 React Router 前端路由深度解析:从传统后端路由到现代 SPA 的完整演进
前端
Dontla1 天前
预置known_hosts如何防止中间人攻击(MITM)?(服务器公钥、服务器私钥)Runner、DNS污染、BGP劫持、同网络ARP欺骗、SSH握手
服务器·网络·ssh
badhope3381 天前
当所有AI都在抄同一份作业:前端模板的趋同、困局与破局
前端·ai·ai编程·前端开发·tailwind·ui设计
Lonely 净土1 天前
Rocky Linux 安装教程
linux·运维·服务器
光影少年1 天前
RN的Fabric 渲染流程
运维·前端·javascript·react native·react.js·fabric
__zRainy__1 天前
React开始:直接在网站中使用React.js
前端·react.js·前端框架
用户059540174461 天前
大模型长记忆评测踩坑实录:2000条错位记忆,让我排查了整整3小时
前端·css
码林鼠1 天前
webpack的基本配置
前端·webpack·node.js
用户938515635071 天前
React Router 进阶:路由守卫、登录鉴权与状态传递
前端·javascript·全栈