Centos系统中如何在指定位置下安装Nginx?

前言

之前因为没有写博客的习惯,导致很多东西时间久了容易遗忘。今天起,将会把工作中遇到的问题与解决思路携程博客分享出来。希望与各位程序员共同进步。

需求分析

工作中为方便运维人员安装部署。项目经理要求前端包与web服务器进行统一打包、统一入库。
从而实现运维人员使用简单的tar包解压命令即可完成前端部署。
因此,需要在指定位置下安装Nginx。本文将把nginx安装在根目录下app/Nginx文件夹中为例

安装过程

环境准备

操作系统 Centos7.X
网络连接 正常
依赖组件: 系统必须安装OpenSSLPCREZlib库。

安装Nginx需要的编译及依赖库

安装OpenSSL库

# Centos连接网络时
yum install openssl-devel
# Centos 无网络连接时
# 至 https://www.openssl.org/source/ 下载tar包上传至Centos /app/Nginx中

# 进行解压
tar -zxvf openssl-1.0.1t.tar.gz
# /app/Nginx/openssl-1.0.1t  记住这个安装目录一会儿会用到

安装 PCRE库

# Centos连接网络时
yum install pcre-devel
# Centos 无网络连接时
# 至 https://ftp.pcre.org/pub/pcre/ 下载tar包上传至Centos /app/Nginx中

# 进行解压
tar -zxvf pcre-8.40.tar.gz
cd pcre-8.40 # 进入文件夹
# 编译命令行
 ./configure
 make && make install 
# /app/Nginx/pcre-8.40 记住这个安装目录一会儿会用到

安装Zlib库

# Centos连接网络时
yum install zlib-devel
# Centos 无网络连接时
# 至 https://www.zlib.net/ 下载tar包上传至Centos /app/Nginx中

# 进行解压
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11 # 进入文件夹
# 编译命令行
 ./configure
 make && make install 
# /app/Nginx/zlib-1.2.11 记住这个安装目录一会儿会用到

安装Nginx

# Centos连接网络时 下载源码包
wget http://nginx.org/download/nginx-1.16.1.tar.gz
# Centos 无网络连接时
# 至 https://nginx.org/en/download.html 下载tar包上传至Centos /app/Nginx中

# 进行解压
tar -zxvf nginx-1.16.1.tar.gz
cd nginx-1.16.1 # 进入文件夹
# 设置常量:
./configure \
--prefix=/app/Nginx/ \
--sbin-path=/app/Nginx/nginx \
--conf-path=/app/Nginx/nginx.conf \
--pid-path=/app/Nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/app/Nginx/pcre-8.40 \        # 刚刚安装的 pcre 的位置
--with-zlib=/app/Nginx/zlib-1.2.11 \        # 刚刚安装的 zlib 的位置
--with-openssl=/app/Nginx/openssl-1.0.1t \   #刚刚安装的 openssl 的位置
# 编译命令行
make && make install 
test -d # 重要!!!如果不执行则不会创建真正的 nginx 文件

启动Nginx进行验证

# 启动Nginx
cd /app/Nginx  
./nginx

使用浏览器访问服务器的IP地址
如果重新配置过端口号。则访问IP地址:端口号
如果出现此界面,表明Nginx安装成功
在这里插入图片描述

撒花!Nginx 安装成功!

以下是在CentOS 7下源码安装Nginx的步骤: 1. 安装必要的依赖包: ``` sudo yum install -y gcc gcc-c++ make automake autoconf libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel ``` 2. 下载并解压Nginx源码包: ``` wget http://nginx.org/download/nginx-1.18.0.tar.gz tar -zxvf nginx-1.18.0.tar.gz cd nginx-1.18.0 ``` 3. 配置编译参数: ``` ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module ``` 以上参数的含义: - `--prefix=/usr/local/nginx`:指定Nginx安装目录为`/usr/local/nginx` - `--with-http_ssl_module`:启用SSL功能 - `--with-http_v2_module`:启用HTTP/2功能 4. 编译安装: ``` make && make install ``` 5. 启动Nginx: ``` /usr/local/nginx/sbin/nginx ``` 6. 验证Nginx是否已经成功启动: 在浏览器访问服务器IP地址或域名,如果能够看到"Welcome to nginx!"的页面,说明Nginx已经成功安装并启动了。 7. 将Nginx设置为系统服务(可选): ``` sudo vi /etc/systemd/system/nginx.service ``` 将以下内容复制到文件: ``` [Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target ``` 保存并退出。 使用以下命令重新加载systemd配置: ``` sudo systemctl daemon-reload ``` 使用以下命令启动Nginx服务: ``` sudo systemctl start nginx ``` 使用以下命令设置开机启动: ``` sudo systemctl enable nginx ``` 至此,在CentOS 7下源码安装Nginx完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值