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 |

  • 测试页面内容如下

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

相关推荐
Apipi*17 分钟前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理
运维行者_2 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
此时不提桶,更待何时2 小时前
06-14-A-Kafka集群运维与迁移实战详解
运维·kafka
IT研究所4 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
AIgorithmGEEK4 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
Nil2084 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)4 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter6254 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
zhengqweasd4 小时前
机房托管服务器怎么选硬盘,机械盘和 SSD 托管场景差异
运维·服务器·github