我使用的环境是64位 Ubuntu 14.04, Nginx是Nginx 1.10.0

nginx依赖以下模块:

l  gzip模块需要 zlib 库

l  rewrite模块需要 pcre 库

l  ssl 功能需要openssl库

1.1.安装pcre

  1. 获取pcre编译安装包,在http://www.pcre.org/上可以获取当前最新的版本
  2. 解压缩pcre-xx.tar.gz包。
  3. 进入解压缩目录,执行sudo ./configure。
  4. sudo make & make install

  注:目前我下载的这个nginx只支持pcre, 不支持pcre2。

  若出现configure: error: You need a C++ compiler for C++ support.说明系统还没有提供C/C++的编译环境,因此需要手动安装。使用命令 sudo apt-get install build-essential 进行安装。

1.2.安装openssl

  1. 获取openssl编译安装包,在http://www.openssl.org/source/上可以获取当前最新的版本。
  2. 解压缩openssl-xx.tar.gz包。
  3. 进入解压缩目录,执行sudo ./config。
  4. sudo make & make install

1.3.安装zlib

  1. 获取zlib编译安装包,在http://www.zlib.net/上可以获取当前最新的版本。
  2. 解压缩openssl-xx.tar.gz包。
  3. 进入解压缩目录,执行sudo ./configure。
  4. sudo make & make install

1.4.安装nginx

  1. 获取nginx,在http://nginx.org/en/download.html上可以获取当前最新的版本。
  2. 解压缩nginx-xx.tar.gz包。
  3. 进入解压缩目录,执行 sudo ./configure
  4. sudo make & make install

若安装时找不到上述依赖模块,使用--with-openssl=<openssl_dir>、--with-pcre=<pcre_dir>、--with-zlib=<zlib_dir>指定依赖的模块目录。如已安装过,此处的路径为安装目录;若未安装,则此路径为编译安装包路径,nginx将执行模块的默认编译安装。

启动nginx之后,浏览器中输入http://localhost可以验证是否安装启动成功。

注:

如果安装nginx后,启动时报如下错误:

sunny@sunny-ThinkPad-T440:/usr/local/nginx$ ./sbin/nginx
./sbin/nginx: error while loading shared libraries: libpcre.so.: cannot open shared object file: No such file or directory

有错误可以看出是找不到"libpcre.so.1"文件,查看具体原因:

sunny@sunny-ThinkPad-T440:/usr/local/nginx/sbin$ ldd $(which /usr/local/nginx/sbin/nginx)
linux-vdso.so. => (0x00007ffd0d73b000)
libdl.so. => /lib/x86_64-linux-gnu/libdl.so. (0x00007f432d6ad000)
libpthread.so. => /lib/x86_64-linux-gnu/libpthread.so. (0x00007f432d490000)
libcrypt.so. => /lib/x86_64-linux-gnu/libcrypt.so. (0x00007f432d257000)
libpcre.so. => not found
libcrypto.so.1.0. => /lib/x86_64-linux-gnu/libcrypto.so.1.0. (0x00007f432cdfc000)
libz.so. => /usr/local/lib/libz.so. (0x00007f432cbe1000)
libc.so. => /lib/x86_64-linux-gnu/libc.so. (0x00007f432c818000)
/lib64/ld-linux-x86-.so. (0x000055c946fde000)

注:ldd检测某条命令需要哪些共享库文件的支持

解决方法:

sudo ln -s /usr/local/lib/libpcre.so. /lib/x86_64-linux-gnu/

Ubuntu下安装Nginx的更多相关文章

  1. Ubuntu下安装Nginx,PHP5(及PHP-FPM),MySQL

    .简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多 ...

  2. 转- 在ubuntu下安装Nginx

    一. 安装包安装 1.1 安装Nginx $sudo apt-get install nginx Ubuntu安装之后的文件结构大致为: 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经 ...

  3. ubuntu下安装 nginx + php + memcached + mariadb

    一,apt-get 安装 1,安装nginx sudo apt-get install nginx 所有的配置文件都在/etc/nginx下,虚拟主机配置在/etc/nginx/sites-avail ...

  4. Ubuntu下安装Nginx详细步骤

    Nginx安装之前需要三个支持: 模块依赖性 ①gzip 模块需要 zlib 库 ②rewrite 模块需要 pcre 库 ③ssl 功能需要 openssl 库 预先编译好的包: sudo apt- ...

  5. ubuntu下安装nginx -php

    mysql : sudo apt-get install mysql-server mysql-client nginx: sudo apt-get install nginx安装Nginx稳定版本 ...

  6. Ubuntu下安装nginx及使用

    首先介绍以下nginx.下图来自百科介绍:详细介绍地址:https://baike.baidu.com/item/nginx/3817705?fr=aladdin 在我们平时的开发娱乐中,也许并不会涉 ...

  7. ubuntu 下安装nginx

    y@y:~$ sudo apt-get install nginx y@y:~$ sudo service nginx start y@y:~$ nginx默认使用80端口,打开浏览器输入:http: ...

  8. Ubuntu下安装与卸载Nginx

    1.Ubuntu下安装Nginx比较简单 敲入下列命令即可: sudo apt-get update sudo apt-get install nginx 2.Ubuntu下卸载,稍不注意就会入坑 s ...

  9. Ubuntu下安装LNMP之php7的安装并配置Nginx支持php及卸载php

    据了解,php7是比之前的版本性能快很多的.http://php.net/get/php-7.2.2.tar.gz/from/a/mirror 安装前也可提前将相关依赖库安装好,或者在安装php时若安 ...

随机推荐

  1. Redis提供的持久化机制(RDB和AOF)

    Redis提供的持久化机制 Redis是一种面向"key-value"类型数据的分布式NoSQL数据库系统,具有高性能.持久存储.适应高并发应用场景等优势.它虽然起步较晚,但发展却 ...

  2. [20160707]Java中如何关闭Frame窗口

    用户类继承自WindowAdapter,而窗口对象Frame作为用户类的数据成员. 1 import java.awt.*; import java.awt.event.*; public class ...

  3. android气泡消息提醒布局

    无论是anroid还是ios,气泡消息提醒再正常不过了.然而要定义一个气泡消息提醒确要费一番周折.下面记录下气泡提醒布局. 定义气泡背景shape_unread_message_bg.xml < ...

  4. ionic 接触的第一个Hybrid项目

    最近需要维护一个Hybird项目,使用的是ionic,由于是第一个Hybrid项目,在这里记录下基本的知识. 先看一下ionic的最基本介绍: http://my.oschina.net/u/2275 ...

  5. Tomcat内存溢出(java.lang.OutOfMemoryError: PermGen space)

    Tomcat启动时报如下错误:     java.lang.OutOfMemoryError: PermGen space 解决办法:     配置相关内存大小.其中按照启动tomcat的不同方式,分 ...

  6. 15. javacript高级程序设计-Canvas绘图

    1. Canvas绘图 HTML5的<canvas>元素提供了一组JavaScript API,让我们可以动态的创建图形和图像.图形是在一个特定的上下文中创建的,而上下文对象目前有两种. ...

  7. JAVA volatile 关键字

    一.volatile(易变的) Java 语言提供了一种稍弱的同步机制,即volatile修饰变量.用来确保将变量的更新操作通知到其他线程,保证了新值能立即同步到主内存,以及每次使用前立即从主内存刷新 ...

  8. java 基础第一季

    1. i安装jdk ii 配置环境变量:JAVA_HOME 配置jdk的安装路径 path            配置命令文件的位置 bin目录的安装路径 PATH_HOME 配置库文件的位置   l ...

  9. [转]Git远程操作详解

    原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...

  10. codeforces 500B.New Year Permutation 解题报告

    题目链接:http://codeforces.com/problemset/problem/500/B 题目意思:给出一个含有 n 个数的排列:p1, p2, ..., pn-1, pn.紧接着是一个 ...