Nginx源码下载与安装详解

引言

在Linux系统中,Nginx是一款高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。它具有高并发、低内存消耗、配置简单等优点,因此深受开发者和运维人员的喜爱。本文将详细介绍Nginx的源码下载、安装步骤以及启动管理,帮助读者轻松搭建Nginx服务器。

一、Nginx源码下载

首先,我们需要从Nginx官网下载源码包。Nginx官网地址为:http://nginx.org/。

源码包为:nginx-1.19.3.tar.gz

我们可以使用wget命令从官网下载源码包,并将其保存到/usr/src目录下:

|---|------------------------------------------------------------------|
| | wget http://nginx.org/download/nginx-1.19.3.tar.gz -P /usr/src |

二、Nginx安装

接下来,我们将按照以下步骤安装Nginx:

2.1 下载Nginx源码包

首先,切换到/usr/src目录,并下载Nginx源码包:

|---|------------------------------------------------------|
| | cd /usr/src |
| | wget http://nginx.org/download/nginx-1.19.3.tar.gz |

2.2 安装Nginx依赖包

在安装Nginx之前,我们需要先安装一些依赖包。这些依赖包包括gcc(源码编译工具)、pcre-devel(提供Nginx的URL重写功能)和zlib-devel(提供Nginx的压缩功能):

|---|--------------------------------------------|
| | yum -y install gcc pcre-devel zlib-devel |

2.3 解压Nginx源码并进入源码包

解压下载的Nginx源码包,并进入解压后的目录:

|---|-------------------------------|
| | tar xf nginx-1.19.3.tar.gz |
| | cd nginx-1.19.3 |

2.4 配置Nginx源码

使用./configure命令配置Nginx源码。配置过程中,我们可以指定安装路径、开启或关闭某些模块等。这里我们仅指定安装路径为/usr/local/nginx:

|---|-----------------------------------------|
| | ./configure --prefix=/usr/local/nginx |

配置的目的主要有三个:检查环境是否满足安装条件并解决依赖问题;指定安装方式、配置文件和命令文件的存放位置;以及指定软件安装路径。

2.5 编译Nginx源码

使用make命令编译Nginx源码。为了加快编译速度,我们可以使用-j参数指定编译时的进程数,这里我们使用4个进程进行编译:

|---|------------|
| | make -j4 |

2.6 安装Nginx

最后,使用make install命令安装Nginx:

|---|----------------|
| | make install |

三、Nginx相关目录

安装完成后,我们需要了解Nginx的相关目录结构。以下是Nginx的主要目录和文件:

  • Nginx路径前缀:/usr/local/nginx
  • Nginx二进制文件:/usr/local/nginx/sbin/nginx
  • Nginx模块路径:/usr/local/nginx/modules
  • Nginx配置文件前缀:/usr/local/nginx/conf
  • Nginx主配置文件:/usr/local/nginx/conf/nginx.conf
  • Nginx进程ID文件:/usr/local/nginx/logs/nginx.pid
  • Nginx错误日志文件:/usr/local/nginx/logs/error.log
  • Nginx访问日志文件:/usr/local/nginx/logs/access.log

四、Nginx启动管理

安装完成后,我们需要对Nginx进行启动、关闭和重启等操作。以下是常用的Nginx启动管理命令:

  • 配置文件测试:/usr/local/nginx/sbin/nginx -t

    这个命令用于测试Nginx的配置文件是否正确,没有语法错误。

  • Nginx启动:/usr/local/nginx/sbin/nginx

    使用此命令启动Nginx服务。

  • Nginx关闭:killall --s QUIT nginx

    使用killall命令发送QUIT信号给Nginx进程,优雅地关闭Nginx服务。

五、Nginx启动测试

安装并启动Nginx后,我们需要测试Nginx的启动状态。以下是几种常用的测试方法:

  • 使用netstat命令查看启动端口:

    |---|----------------------------|
    | | netstat -tuln | grep :80 |

    这个命令用于查看Nginx是否监听在80端口上。

  • 使用lsof命令查看启动端口:

    |---|---------------|
    | | lsof -i :80 |

    lsof命令也可以用来查看指定端口的进程信息。

  • 使用文本浏览器访问

|---|--------------------------------------------|
| | elinks http://IP |

  • 测试页面内容如下

今天的分享就到这里啦,欢迎各位小伙伴的关注^_^

相关推荐
随性而行3602 分钟前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化
胖兔纸22 小时前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
不会C语言的男孩2 小时前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器
ylscode2 小时前
CVE-2026-31694 漏洞深度分析:Linux 内核 FUSE 组件存在本地提权风险,普通用户可直取 root 权限
linux·运维·服务器
智脑API平台3 小时前
Codex CLI 怎么用 .env 配置 API Key?本地项目和自动化脚本接入教程
运维·自动化
weixin_307779134 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
流浪0015 小时前
Git篇(三):吃透远程协作:SSH 密钥、分支、标签全流程实战指南
运维·git·ssh
编程令我快乐5 小时前
windows单次传linux文件太大
linux·运维·服务器
FoldWinCard6 小时前
D4 Linux 进程 内存 等命令
linux·运维·服务器
番茄育学园6 小时前
2026表格自动化工具实测:四个不同方案,适配不同办公场景
运维·自动化