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 |

  • 测试页面内容如下

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

相关推荐
存储服务专家StorageExpert1 天前
手搓一个 DELL EMC Unity存储系统健康检查清单
linux·运维·服务器·存储维护·emc存储
SonOfWind03111 天前
CentOS搭建本地源
linux·运维·centos
IT成长日记1 天前
【Nginx开荒攻略】Nginx主配置文件结构与核心模块详解:从0到1掌握nginx.conf:
linux·运维·nginx·配置文件
代码的余温1 天前
Web服务器VS应用服务器:核心差异解析
运维·服务器·前端
NiKo_W1 天前
Linux 开发工具(1)
linux·运维·服务器
艾莉丝努力练剑1 天前
【C++】类和对象(下):初始化列表、类型转换、Static、友元、内部类、匿名对象/有名对象、优化
linux·运维·c++·经验分享
-SGlow-1 天前
Linux相关概念和易错知识点(45)(网络层、网段划分)
linux·运维·服务器·网络
潘潘潘潘潘潘潘潘潘潘潘潘1 天前
【MySQL】从零开始学习MySQL:基础与安装指南
linux·运维·服务器·数据库·学习·mysql
ZzzZZzzzZZZzzzz…1 天前
Nginx_Tomcat综合案例
运维·nginx·tomcat·负载均衡·rhce·反向代理·https加密服务
努力努力再努力wz1 天前
【c++进阶系列】:map和set的模拟实现(附模拟实现的源码)
java·linux·运维·开发语言·c++