当前位置: 首页 > news >正文

linux下安装nginx步骤详解(源码安装方式)

  nginx(Engine X)是一款高性能的Web服务器和反向代理服务器,因其高并发处理能力、低资源消耗以及模块化的设计,广泛应用于各种网站和应用中。在Linux系统中,除了通过包管理工具(如aptyum)安装Nginx外,源码安装是另一种常见的方式。源码安装方式可以让你根据自己的需求进行定制,选择性地启用或禁用模块,以优化性能。

本文将详细介绍在Linux系统上通过源码安装Nginx的步骤,包括准备环境、下载源码、配置编译选项、编译和安装等过程.

安装前的准备工作

        在开始之前,我们需要确保系统已经安装了一些必备的软件包,包括gccmakepcre等,这些工具和库文件对于Nginx的编译至关重要。你可以通过以下命令来检查和安装这些依赖:

# 对于Debian/Ubuntu系统
sudo apt-get update
sudo apt-get install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# 对于RedHat/CentOS系统
sudo yum groupinstall "Development Tools"
sudo yum install pcre pcre-devel zlib zlib-devel openssl openssl-devel

下载nginx源码

        接下来,我们需要下载Nginx的源码包。你可以从官方网站获取最新版本的源码,地址是:

http://nginx.org/download/nginx-1.27.4.tar.gz

我们把下载的包拷贝到/usr/local,下载完成后,解压缩源码包并进入源码目录:

tar -zxvf nginx-1.27.4.tar.gz
cd nginx-1.27.4

进入解压目录后如图:

具体安装步骤

接下来,执行configure,如下:

./configure --prefix=/usr/local/nginx1.27.4

后半段路径为自定义安装地址。执行完如下图(部分截图)所示:

在安装目录下创建一个logs文件夹并授权:

mkdir logs
chmod 700 logs

执行make、make install命令:

make && make install

部分截图:

安装完成后,目录多出几个文件夹,如图:

进入sbin文件夹,如图:

启动nginx

./nginx

查看是否启动成功:

查询到有进程了,表示已经启动成功,接下来根据需求开始做配置文件调整,打开目录下的conf文件夹,如图:

对配置文件进行编辑:

vim nginx.conf

如图:

我们做一个反向代理配置和SSL配置 

映射配置

server {
    listen 80;
    server_name your_domain.com;

    location / {
        proxy_pass http://localhost:3000;   # 将请求转发到本地的3000端口
        proxy_set_header Host $host;         # 保持请求头中的原始主机名
        proxy_set_header X-Real-IP $remote_addr;  # 转发真实客户端IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  # 保持请求中的原始IP链
        proxy_set_header X-Forwarded-Proto $scheme;  # 保持请求的协议(http/https)
    }
}

端口、域名、转发地址可根据需求进行修改

SSL配置
 

server {
    listen 443 ssl;
    server_name your_domain.com;

    ssl_certificate /etc/ssl/certs/your_domain.crt;
    ssl_certificate_key /etc/ssl/private/your_domain.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:AES256-GCM-SHA384';

    location / {
        proxy_pass http://localhost:3000;   # 将请求转发到本地的3000端口
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

端口、域名、证书地址、转发地址可根据实际需求进行修改。

负载均衡配置

http {
    upstream backend_servers {
        server localhost:3000;#实例1
        server localhost:3001;#实例2
    }

    server {
        listen 80;
        server_name your_domain.com;

        location / {
            proxy_pass http://backend_servers;  # 使用负载均衡组
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
}

以上就是nginx安装步骤以及常用的一些配置。希望对你有用!记得关注我哦

相关文章:

  • FFmpeg 命令行全解析:高效音视频处理从入门到精通
  • 玩机日记 12 fnOS使用lucky反代https转发到外网提供服务
  • python 基本用法
  • Mac 提示「未打开“Sketch.app”」Apple 无法验证“Sketch.app”是否包含可能危害Mac安全或泄露隐私的恶意软件
  • Flutter - 基础Widget
  • [ComfyUI]官方已支持Skyreels混元图生视频,速度更快,效果更好(附工作流)
  • 力扣hot100 —— 电话号码字母组合; 子集 (非回溯做法)简单易懂
  • Windows安装NVIDIA显卡CUDAD调用GPU,适用于部署deepseek r1
  • halcon三维点云数据处理(二十七)remove_bin_for_3d_object_localization
  • 传统企业可观测建设之路
  • IDEA关闭SpringBoot程序后仍然占用端口的排查与解决
  • 【Linux】Ubuntu服务器的安装和配置管理
  • 在线VS离线TTS(语音合成芯片)有哪些优势-AIOT智能语音产品方案
  • Unity打包APK报错 using a newer Android Gradle plugin to use compileSdk = 35
  • 系统基础与管理(2025更新中)
  • 大语言模型中的梯度值:深入理解与应用
  • android s下make otapackage编译失败
  • Linux:互斥
  • 算法与数据结构(格雷编码)
  • Node.js 中 fs 模块的高级用法
  • 以色列在加沙发起新一轮强攻,同步与哈马斯展开无条件谈判
  • 中国旅马大熊猫“福娃”和“凤仪”启程回国
  • 柬埔寨果农:期待柬埔寨榴莲走进中国市场
  • 广西鹿寨一水文站“倒刺扶手”存安全隐患,官方通报处理情况
  • 下周或迎外贸“抢出口”高峰,跨境电商敏感货物如何便利化“登机”?
  • 混乱的5天:俄乌和谈如何从充满希望走向“卡壳”