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用户修改成和启动用户一致