Ubuntu &Centos7 源码安装nginx

Ubuntu 环境

下载nginx源码包

进入nginx官网下载

http://nginx.org/download/

选择自己想要的版本

wget http://nginx.org/download/nginx-1.21.4.tar.gz

准备安装环境(提前下载一些环境配置)

apt-get install build-essential libpcre3-dev libssl-dev

将下载的源码包进行解压

tar -zxvf /root/app/nginx-1.21.4.tar.gz -C /root/app/

进入解压目录

cd nginx-1.21.4

配置

./configure --with-http_ssl_module --prefix=/root/app/nginx/

报错缺少zlib 执行以下

apt-get install zlib1g-dev

编译

make && make install

其他错误

You need a C++ compiler for C++ support 缺少c++编译器的原因
apt-get install gcc gcc-c++
make[1]: Leaving directory '/root/app/nginx-1.12.1;'

  • 我只需要去看/root/app下面是否有nginx文件夹?
  • 如果已经有nginx文件夹?
  • 我们再去看nginx是否可以正常启动?
  • 如果nginx启动也可以成功,我们再去看下网站是否可以访问,是否会出现“Welcome to nginx!”?
  • 如果上面都成功了,说明你的nginx已经ok!

Centos7 环境

进入nginx官网下载

http://nginx.org/download/

选择自己想要的版本

wget http://nginx.org/download/nginx-1.21.4.tar.gz
解压
tar -zxvf /root/app/nginx-1.21.4.tar.gz -C /root/app/

安装 gcc,安装 Nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境
yum install -y gcc-c++

安装 PCRE pcre-devel,PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。
yum install -y pcre pcre-devel

安装 zlib,zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 linux 上安装 zlib 库。
yum install -y zlib zlib-devel

安装 OpenSSL,OpenSSL 是一个强大的安全套接字层密码库,包括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 CentOS 安装 OpenSSL 库。
yum install -y openssl openssl-devel

进入解压目录

cd nginx-1.21.4

对nginx进行配置

./configure --with-http_ssl_module --prefix=/root/app/nginx/

编译安装

make && make install

后续配置步骤

cd ../nginx
找到nginx.conf
进行配置文件nginx.conf配置

nginx常用命令

进入sbin
./nginx -t 测试配置文件准确性
./nginx -s stop 停止
./nginx 启动

可能会遇到的问题

nginx访问时报403

把nginx.conf的use用户修改成和启动用户一致

image

posted @ 2021-11-10 14:07  darling331  阅读(54)  评论(0编辑  收藏  举报