场景描述:

客户生产环境服务器,内网隔离无法访问互联网,需要准备好相应的安装包,离线部署。

服务器&软件包版本:

环境:
ubunt16.04
gcc-4.8.4
包:
nginx-1.8.1
pcre-8.38
zlib-1.2.11
openssl-1.0.2n

不想自己下载的小伙伴,可以从如下链接下载上述4个包:

https://pan.baidu.com/s/1K_1Bbz_zcGKvvTljCZcwSQ 提取码: 2tj5

前置环境配置,也是安装成功的前提,即将上述相应安装包都上传复制到/usr/local 目录下。

需要用切换到root用户操作,进入到 /usr/local 目录下执行下面1 2 3 4 5 6步骤,此处路径与之后安装nginx对应,需要注意!

1. gcc --源码编译依赖的环境,必须保证系统已安装该包

apt-get install build-essential
apt-get install libtool
// gcc --version 查看gcc版本
// gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4

2. PCRE ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
tar -zxvf pcre-8.38.tar.gz
cd pcre-8.38
./configure
make
make install

3. zlib http://zlib.net

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip

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

4. penssl https://www.openssl.org/source/

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用.

nginx不仅支持http协议,还支持https(即在ssl协议上传输http)

wget https://www.openssl.org/source/openssl-1.0.2n.tar.gz
tar -zxvf openssl-1.0.2n.tar.gz

5. 安装步骤nginx

一、源码安装

1.下载 nginx 压缩包

wget https://nginx.org/download/nginx-1.8.1.tar.gz

2.解压 nginx-1.8.1.tar.gz

tar -zxvf nginx-1.8.1.tar.gz

3.解压后 我们通过 cd 命令进入到nginx-1.8.1文件夹下面

安装nginx到 /usr/local/nginx目录下

cd nginx-1.8.1

// 配置nginx
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/local/pcre-8.38 --with-zlib=/usr/local/zlib-1.2.11 --with-openssl=/usr/local/openssl-1.0.2n
// 编译
make
// 安装
make install

至此nginx安装完成!

如果使用 nginx 访问 ftp 站点内容,需要将 nginx user设置为对应 ftp user 不然会因权限不足报 403 错误

 6.启动nginx

建议使用第一种启动,否则可能会出现如下错误【nginx: [error] open() "/***/***/***/nginx.pid" failed (2: No such file or directory)】

第一种启动方式:
cd /usr/local/nginx
./nginx -c ./nginx.conf 第二种启动方式:
/usr/local/nginx/nginx
cd /usr/local/nginx 目录下:启动
./nginx -c ./nginx.conf 重新加载配置
./nginx -s reload 停止:
./nginx -s stop

附ubuntu在线安装nginx的方式:

该方式安装完成后,目录及配置文件,以及启动方式跟离线版编译安装的结果会有所区别。

apt-get install nginx
启动程序文件在/usr/sbin/nginx 日志放在了/var/log/nginx中,分别是access.log和error.log
并已经在/etc/init.d/下创建了启动脚本nginx 在线安装启动nginx
/etc/init.d/nginx start

nginx配置参数说明:

https://www.cnblogs.com/jason007/articles/9400505.html

https://blog.csdn.net/qq_33516288/article/details/77197110

ubuntu16.04 离线安装nginx的更多相关文章

  1. ubuntu16.04离线安装nvidia-docker2

    目前需要离线对ubuntu 进行封装docker环境 在熟悉docker环境过程中,有网络条件下,还处于懵逼状态 离线安装…… 大佬救救我 来了: 首先下载安装docker最新版 我的OS是Ubunt ...

  2. Ubuntu16.04.1 安装Nginx

    Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev ...

  3. ubuntu16.04 离线安装docker ce

    ubuntu离线安装 docker17.05.0-ce 离线安装 不想自己下载的小伙伴可以从以下地址下载几个软件包: 链接: https://pan.baidu.com/s/1lF7t7ciMhUnW ...

  4. Ubuntu16.04下安装nginx+mysql+php+redis

    一.redis简介 Redis是一个key-value存储系统.和Memcached类似,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记 ...

  5. Ubuntu16.04编译安装php

    #Ubuntu16.04编译安装php Ubuntu16.04上面搭建基于Nginx的php服务.Nginx使用apt直接安装的. sudo apt install nginx php的安装部署步骤主 ...

  6. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  7. Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel

    Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel 1.MySQL安装[安装 MariaDB]MariaDB是MySQL的一个分支首 ...

  8. Ubuntu16.04下安装数据库oracle客户端

    在Ubuntu16.04下安装oracle数据库客户端,使Django项目连接到远程Oracle数据库. 1.下载oracle客户端安装包: 进入官网http://www.oracle.com/tec ...

  9. Ubuntu16.04下安装redis

    Ubuntu16.04下安装redis 保证网络畅通,选定好下载工作路径,执行以下命令下载redis-3.2.6: sudo wget http://download.redis.io/release ...

随机推荐

  1. oracle service name sid , 用户 和 表空间

    oracle 的四个概念: 数据库: 就是一堆静态的数据文件.注意是静态的 instance 实例: 可以类比数据库连接. 实例就是为了操作数据库而开辟的进程和内存空间,有了这个实例你才能操作数据库. ...

  2. PHP常用180函数总结【初学者必看】

    数学函数 1.abs(): 求绝对值 <span style="font-size: 14px;">$abs = abs(-4.2); //4.2<br>& ...

  3. 转存下链接--- Java awt Swing 进行拖拽实现布局

    http://blog.csdn.net/vpingchangxin/article/details/8673825 swing开发图形界面工具,eclipse swing图形化操作界面工具配置

  4. JSP页面使用include指令出现 Duplicate local variable basePath

    现有三个页面 " include.jsp " " a.jsp " " b.jsp " 页面代码如下 首先是a.jsp <%@ page ...

  5. MongoDB + Express 环境搭建记

    最近项目需要使用 MongoDB,所以不得不搭建 MongoDB 环境,此文记录搭建过程及使用过程中需要了解的问题. Linux + Windows 混合搭建调试 MongoDB 记录 版本介绍 : ...

  6. 关于SQL2008R2连接服务器出错问题

    在安装SQL2008R2后,在公司里用VS2013测试可以连接,可是回到寝室却出了问题,当打开SSMS连接服务器的时候会提示: “在与SQL Server建立连接时出现与网络相关的或特定于实例的错误. ...

  7. 解决maven在build时下载文件卡死问题

    1.停止build 2.cd ~/.m2/repository 3.在这个目录下找到你要下载的文件,然后查看是否有个同名文件带一个.lock后缀 4.rm -f   xxxx.lock 5.重新bui ...

  8. Linux-VMware Workstation&CentOS-5.5-i386-bin-DVD安装

    [2018年6月24日 22:55:47]VM7+CentOS5.5使用NAT方式连接互联网1.在VMWare的菜单:“VM→Setting...” 2.在VMWare的菜单:“Edit→Virtua ...

  9. influence maximization

    Robust Influence Maximization 首先简要介绍一下这个问题:在一个社交网络图中寻找固定数量的节点,使得这些节点对所有节点的影响值尽可能的大.这个问题由于在病毒式营销,谣言监控 ...

  10. 【ProtoBuffer】windows上安装ProtoBuffer3.1.0 (附已编译资源)

    ------- 17.9.17更新  --- 以下这些方法都是扯淡,对我的机器不适用,我后来花了最后成功安装并亲测可用的方法不是靠vs编过的,vs生成的库引入后函数全部报undefine refere ...