JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

Nginx源码安装

wys521 2024-09-06 04:28:19 精选教程 51 ℃ 0 评论

日常问题处理

Centos源码安装Nginx

0. 现象与原因

0.1 使用yum install -y nginx就可以安装Nginx,为什么需要源码安装呢?

原因可能包含以下:

  • 定制化的功能
  • 编译完成后的软件性能可能会好一些
  • 安装过程中拥有更多的修改配置
  • 适用多平台
  • 应用最新的安全补丁

0.2 自己为什么会选择Nginx源码编译安装

熟悉Niginx源码编译,了解Nginx,仅此而已

总结一句话:nginx源码安装真的不如Package包安装,它不香嘛

1. 选择Nginx版本

下载地址:download

这里选择的是:Stable 1.20.1

  • Mainline版本:包括最新的特性和bug修复。 虽然可靠的,但它可能包含一些实验性模块,可能会有一些新的bug
  • Stable版本:不包括最新的特性,但拥有关键的bug修复 。推荐生产服务器使用稳定版本
  • 下图是Mainline版本和Stable版本的演进图
  • Stable版本是从Mainline版本Fork出来的,Stable分支中不会频繁提交Commit修改,只会引入关键严重的Bug修复

2. 安装依赖的库文件

将相关的软件放置在同一个目录下,比如:/opt

2.1 PCRE

支持正则表达式,被Nginx Core和Rewrite模块需要

cd /opt
# 官网地址:https://ftp.pcre.org/pub/pcre/
wget https://ftp.pcre.org/pub/pcre/pcre-8.45.tar.gz
tar -zxf pcre-8.45.tar.gz
cd pcre-8.45/

./configure

make

make install

如果报错:

no acceptable C compiler found in $PATH

则考虑是否安装了C编译工具

2.1.1 安装GCC c 和 c++

  • 查看groups信息

yum group list

  • Development Tools安装
  • yum group install "Development Tools"
  • 验证gcc
  • gcc -version

2.2 zlib

支持header压缩。NGINX的Gzip模块需要

cd /opt
wget http://zlib.net/zlib-1.2.11.tar.gz
tar -zxf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make
make install

2.3 OpenSSL

支持HTTPS协议。 NGINX SSL模块和其他模块需要

cd /opt
wget http://www.openssl.org/source/openssl-1.1.1g.tar.gz
tar -zxf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g
./Configure linux-x86_64 --prefix=/usr
make
make install

3. 安装Nginx

3.1 将下载好的nginx放到/opt目录

cd /opt
# 或者wget下载
# wget https://nginx.org/download/nginx-1.21.3.tar.gz

3.2 安装

tar -zxf nginx-1.21.3.tar.gz
cd nginx-1.21.3/
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-pcre=../pcre-8.45 --with-zlib=../zlib-1.2.11 --with-http_ssl_module --with-stream --with-mail
make
make install

4. 配置防火墙

firewall-cmd --list-all
firewall-cmd --add-service=http --permanent
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-all

5. 验证Nginx

5.1 启动

一定要注意$PATH路径,否则需要写Nginx绝对路径进行启动

nginx

5.2 验证

浏览器输入对应的IP地址访问

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表