linux离线安装nginx

打印 上一主题 下一主题

主题 618|帖子 618|积分 1854

一、下载nginx

下载地址:https://nginx.org/en/download.html

二、外部依赖检查和安装

依赖一共有以下几种范例:gcc、pcre、zlib、opnessl
2.1 gcc检查

  1. gcc -v
复制代码
出现如下,分析gcc是安装了的

如果末了一行没有出现对应gcc版本信息,那就要去手动下载了 ,下面的部分是下载安装各种依赖
提供个阿里云镜像地址:https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
gcc 清单
  1. cpp-4.8.5-44.el7.x86_64.rpm
  2. gcc-4.8.5-44.el7.x86_64.rpm
  3. glibc-devel-2.17-317.el7.x86_64.rpm
  4. glibc-headers-2.17-317.el7.x86_64.rpm
  5. kernel-headers-3.10.0-1160.el7.x86_64.rpm
  6. libmpc-1.0.1-3.el7.x86_64.rpm
  7. mpfr-3.1.1-4.el7.x86_64.rpm
复制代码
一个个找到下载,小本领:可以直接复制名字定位,ctrl+f

把下载好的gcc依赖同一上传到服务器的同一个文件夹下,或者可以通过文章顶部的资源下载相应的文件包,相关范例已经放在同一个目录下,上传成功之后对压缩文件举行解压,进入解压后的目录,然后执行下列命令安装gcc
  1. rpm -Uvh *.rpm --nodeps --force
复制代码
2.2 PCRE检查

为什么要这个库?由于nginx是使用C语言开发的,为了实现高性能,用到了这个库
检测安装命令:
  1. rpm -qa | grep pcre
复制代码
通过此命令可以发现我这台服务器上面已经安装好了pcre依赖

如果没有出现这些信息分析没有安装,需要自行下载
下载地址:https://www.pcre.org/
按照下图中箭头的地址举行下载,由于是外网,可能无法访问,需要翻墙才能举行访问,如果无法翻墙可以通过文章顶部的资源举行下载

下载下来后上传到linux服务器某个文件夹下
执行解压命令
  1. tar -zxvf pcre2-10.44.tar.gz
复制代码
cd进入解压后的目录下依次执行
  1. ./configure (后面可加 --prefix=安装目录,安装到指定路径,一般不加,就安装到默认路径下)
  2. make
  3. make install
复制代码
2.3 zlib检查

检测安装命令:
  1. rpm -qa | grep zlib
复制代码
我这里通过命令查看到时已经安装了zlib

没有如上信息,要下载安装
地址:https://www.zlib.net/
往下划 ,找到下图中圈出来的部分举行下载

下载好后上传到服务器某文件夹下
执行解压命令
  1. tar -zxvf zlib.tar.gz
复制代码
再cd 到解压后的zlib目录顺序执行
  1. ./configure (后面可加 --prefix=安装目录,安装到指定路径,一般不加,就安装到默认路径下)
  2. make
  3. make install
复制代码
2.4 openssl检查

检测安装命令:
  1. openssl version
复制代码
我这里通过命令查看到时已经安装了openssl

如果你哪里没有显示已安装,那么发起去下面这个地址举行下载
https://openssl-library.org/source/

下载好后上传到服务器某文件夹下
执行解压命令
  1. tar -zxvf openssl-3.3.1.tar.gz
复制代码
再cd 到解压后的openssl目录顺序执行
  1. ./configure (后面可加 --prefix=安装目录,安装到指定路径,一般不加,就安装到默认路径下)
  2. make
  3. make install
复制代码
三、安装nginx

上传下载后的nginx到本身新建的目录,如下图:

依次执行这些命令:
  1. cd /data/nginx                    进入上传nginx文件的目录
  2. tar -zxvf nginx-1.27.0.tar.gz     对上次的nginx文件进行解压
  3. cd nginx-1.27.0                  进入解压后的文件目录
复制代码
进入解压后的文件夹下执行如下,这里配置安装到/usr/local下
  1. ./configure  (--prefix=/usr/local/nginx,这是指定安装到某个路径下,如果不指定,则默认也是安装到这个路径下,没有nginx文件夹会自动创建)
  2. make
  3. make install
复制代码
我这里执行完第一句报错了,我重新安装下PCRE库(按照上述pcre流程来)

安装好后再进入nginx的解压目录

继续执行上面的nginx安装
  1. ./configure  (--prefix=/usr/local/nginx,这是指定安装到某个路径下,如果不指定,则默认也是安装到这个路径下,没有nginx文件夹会自动创建)
  2. make
  3. make install
复制代码
如果照旧报错,细致观察报错是否是zlib错误,如果是,参考zlib的安装步骤重新安装之后继续执行nginx的安装命令
正常情况下,上面三个命令执行完成之后nginx的安装根本完成
四、启动nginx

进入nginx的启动目录,由于没有设置nginx的安装目录,所以默认安装在/usr/local/nginx
  1. cd /usr/local/nginx/sbin/
  2. ./nginx
复制代码
nginx启动成功之后可以通过以下命令举行查询
  1. ps -ef|grep nginx
复制代码
启动成功之后显示如下:

nginx的默认监听端口是80,所以访问本机加上80端口查看nginx,如下图正常访问
由于我这里关闭了防火墙,如果你的服务器没有关闭防火墙需要对80端口举行放行,不然无法访问,这里就不具体介绍防火墙端口开放的内容

五、设置nginx开机自启

这里接纳Systemd方式,把nginx作为系统服务,设置开机自启动
首先执行以下命令
vi /etc/systemd/system/nginx.service
创建一个nginx系统服务文件,按 i 键并输入以下内容,esc键退出,:wq生存
注意 /usr/local/nginx要替换成本身的nginx的安装路径(不是解压路径)
  1. [Unit]
  2. Description=The nginx HTTP and reverse proxy server
  3. After=network.target
  4. [Service]
  5. Type=forking
  6. ExecStartPre=/usr/local/nginx/sbin/nginx -t
  7. ExecStart=/usr/local/nginx/sbin/nginx
  8. ExecReload=/usr/local/nginx/sbin/nginx -s reload
  9. ExecStop=/usr/local/nginx/sbin/nginx -s stop
  10. [Install]
  11. WantedBy=multi-user.target
复制代码
  1. nginx -s quit # 这种方法较stop相比就比较温和,需要进程完成当前工作后再停止。
  2. nginx -s stop # 立即停止服务 这种方法比较强硬,无论进程是否在工作,都直接停止进程
复制代码
先把之前的服务进程杀掉

革新配置
  1. sudo systemctl daemon-reload
复制代码
答应nginx自启动
  1. sudo systemctl enable nginx.service
复制代码
启动nginx
  1. sudo systemctl start nginx.service
复制代码
查看nginx服务的状态
  1. sudo systemctl status nginx.service
复制代码

查看开机自启动的服务列表
  1. systemctl list-units --type=service
复制代码

克制nginx服务
  1. sudo systemctl stop nginx.service
复制代码

末了可以通过reboot重启验证nginx是否开机自启动,我服务器上面涉及的服务较多,就不做演示

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

锦通

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表