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 |

  • 测试页面内容如下

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

相关推荐
洛菡夕27 分钟前
nginx安全防护与HTTPS部署实战
nginx·安全·https
未佩妥剑,已入江湖1 小时前
docker Windows下安装
运维·windows·docker·容器
LXY_BUAA1 小时前
《嵌入式操作系统》_高级字符设备驱动_20260316
linux·运维·服务器·驱动开发
顶妙WMS海外仓管理系统2 小时前
Shopify卖家破910万,海外仓如何对接Shopify独立站?
运维·产品运营
IMPYLH2 小时前
Linux 的 chmod 命令
linux·运维·服务器
北京智和信通3 小时前
面向超融合的全域监控与一体化运维方案
运维·网管软件·超融合监控·超融合运维
艾莉丝努力练剑3 小时前
【MYSQL】MYSQL学习的一大重点:数据库基础
linux·运维·服务器·数据库·c++·学习·mysql
会喷火才能叫火山3 小时前
本地搭建AI相关步骤
linux·运维·ai·centos
The Open Group3 小时前
TOGAF®如何平衡创新与合规——金融机构的架构治理之道
运维·安全·架构
小周学学学3 小时前
vmware的python自动化:批量给esxi主机挂载iscsi动态目标
运维·自动化·vmware·虚拟化