通过 Nginx 源码安装需要提前准备的内容:
GCC 编译器
Nginx 是使用 C 语言编写的程序,因此想要运行 Nginx 就需要安装一个编译工具
GCC 就是一个开源的编译器集合,用于处理各种各样的语言,其中就包含了 C 语言
使用命令 yum install -y gcc
来安装
安装成功后,可以通过 gcc --version
来查看 gcc 是否安装成功
PCRE
Nginx 在编译过程中需要使用到 PCRE 库(Perl Compatible Regular Expression 兼容正则表达式库),因为在 Nginx 的 Rewrite 模块和 HTTP 核心模块都会使用到 PCRE 正则表达式语法
可以使用命令 yum install -y pcre pcre-devel
来进行安装
安装成功后,可以通过 rpm -qa pcre pcre-devel
来查看是否安装成功
zlib
zlib 库提供了开发人员的的压缩算法,在 Nginx 的各个模块中需要使用 gzip 压缩,所以也需要提前安装其库及源码 zlib 和 zlib-devel
可以使用 yum install -y zlib zlib-devel
来进行安装
安装成功后,可以通过 rpm -qa zlib zlib-devel
来查看是否安装成功
OpenSSL
OpenSSL 是一个开发源代码的软件库包,应用程序可以使用这个包进行安全通信,并且避免被窃听
SSL
:Secure Sockets Layer 安全套接层协议的缩写,可以在 Internet 上提供秘密性传输,其目标是保证两个应用间通信的保密性和可靠性。在 Nginx 中,如果服务器需要提供安全网页时就需要用到 OpenSSL 库,所以需要对 OpenSSL 的库文件及它的开发安装包进行安装
可以使用命令 yum install -y openssl openssl-devel
来进行安装
安装成功后,可以通过 rpm -qa openssl openssl-devel
来查看是否安装成功
上述命令,一个个来的话比较麻烦,也可以通过一条命令来进行安装
yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
进行全部安装
一、通过 Nginx 源码简单安装
nginx: downloadhttps://nginx.org/en/download.html
1、进入官网找到需要下载版本的链接地址,或者直接使用 wget 命令进行下载
wget https://nginx.org/download/nginx-1.24.0.tar.gz
2、对下载的资源进行包管理
mkdir -p nginx/core
mv nginx-1.24.0.tar.gz nginx/core
3、解压缩
tar -xzf nginx-1.24.0.tar.gz
4、进入资源文件中,运行 configure
./configure
5、编译
make
6、安装
make install
编译与安装也可以一起执行
make && make install
7、启动 Nginx
cd sbin
./nginx
在浏览器访问:虚拟机 IP 地址,出现以下页面则安装成功
二、通过 Nginx 源码复杂安装
这种方式和简单安装配置不同的地方在于第一步,通过 ./configure
来对编译参数进行设置,需要我们手动来指定
PATH
:是和路径相关的配置信息
with
:是启动模块,默认是关闭的
without
:是关闭模块,默认是开启的
我们先来认识一些简单的路径配置以及通过这些配置来完成一个简单的编译:
--prefix=PATH
指向 Nginx 的安装目录,默认值为 /usr/local/nginx
--sbin-path=PATH
指向(执行)程序文件(nginx)的路径,默认值为<prefix>/sbin/nginx
--modules-path=PATH
指定 Nginx 动态模块安装目录,默认值为 <prefix>/modules
--conf-path=PATH
指定配置文件(nginx.conf)的路径,默认值为<prefix>/conf/nginx.conf
--error-log-path=PATH
指向错误日志文件的路径,默认值为 <prefix>/logs/error.log
--http-log-path=PATH
指向访问日志文件的路径,默认值为 <prefix>/logs/access.log
--pid-path=PATH
指向 Nginx 启动后进程 PID 的文件路径,默认值为 <prefix>/logs/nginx.pid
--lock-path=PATH
指向 Nginx 锁文件的存放路径,默认值为 <prefix>/logs/nginx.lock
基本步骤跟简单安装没什么区别,只是在运行 ./configure 时指定一些路径参数
示例代码:
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--modules-path=/usr/local/nginx/modules \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--lock-path=/usr/local/nginx/logs/nginx.lock
三、使用 yum 安装
使用源码进行简单安装,发现安装的过程比较繁琐,需要提前准备 GCC 编译器、PCRE 兼容正则表达式库、zlib 压缩库、OpenSSL 安全通信的软件库包,然后才能进行 Nginx 的安装
nginx: Linux packageshttps://nginx.org/en/linux_packages.html#RHEL
1、安装 yum-utils
sudo yum install -y yum-utils
这里如果系统中没有安装过 yum-utils 则会自动安装,若是已经安装过,则会提示 Nothing to do
可以直接进行第二步
2、添加 yum 源文件
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
这里要注意:直接复制到 Linux 中可能会出现第一行部分缺失,需要手动补齐!!!
默认使用稳定版,若需切换为主线版本
sudo yum-config-manager --enable nginx-mainline
3、安装 Nginx
sudo yum install -y nginx
使用这种方式安装 Nginx,则会使用默认的路径:
nginx 的配置文件在 /etc/nginx/nginx.conf
自定义的配置文件放在 /etc/nginx/conf.d
项目文件存放在 /usr/share/nginx/html/
日志文件存放在 /var/log/nginx/
还有一些其他的安装文件都在 /etc/nginx
一 叶 知 秋,奥 妙 玄 心