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 |

  • 测试页面内容如下

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

相关推荐
Trouvaille ~22 分钟前
【Linux】TCP Socket编程实战(一):API详解与单连接Echo Server
linux·运维·服务器·网络·c++·tcp/ip·socket
芷栀夏29 分钟前
深度解析 CANN 异构计算架构:基于 ACL API 的算子调用实战
运维·人工智能·开源·cann
全栈工程师修炼指南38 分钟前
Nginx | stream 四层反向代理:SSL、PREREAD 阶段模块指令浅析与实践
运维·网络·网络协议·nginx·ssl
威迪斯特2 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
一方热衷.2 小时前
在线安装对应版本NVIDIA驱动
linux·运维·服务器
独自归家的兔2 小时前
ubuntu系统安装dbswitch教程 - 备份本地数据到远程服务器
linux·运维·ubuntu
ONE_SIX_MIX2 小时前
ubuntu 24.04 用rdp连接,桌面黑屏问题,解决
linux·运维·ubuntu
龙飞052 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
春日见2 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡2 小时前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器