下载源码包 nginx 地址:
http://nginx.org/en/download.html  下载nginx 1.4.7

编译前先安装两个包:

直接编译安装会碰到缺少pcre等问题,这时候只要到再安装两个包就ok

sudo apt-get install libpcre3-dev aptitude libssl-dev这样再make install就可以成功了

执行如下操作来安装openssl及其开发函数库:

 
  1. $ sudo apt-get install openssl
  2. $ sudo apt-get install libssl0.9.8
  3. $ sudo apt-get install libssl-dev

依赖包安装完毕以后 就可以编译安装nginx

正式开始前,编译环境gcc g++ 开发库之类的需要提前装好,这里默认你已经装好。 ububtu平台编译环境可以使用以下指令 
apt-get install build-essential apt-get install libtool 
centos平台编译环境使用如下指令 安装make: 
yum -y install gcc automake autoconf libtool make 
安装g++: 
yum install gcc gcc-c++ 
下面正式开始 
--------------------------------------------------------------------------- 一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。 1.选定源码目录 
可以是任何目录,本文选定的是/usr/local/src 
cd /usr/local/src 
2.安装PCRE库 
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新的 PCRE 源码包,使用下面命令下载编译和安装 PCRE 包: 
cd /usr/local/src 
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.34.tar.gz  tar -zxvf pcre-8.34.tar.gz cd pcre-8.34

./configure make 
make install

3.安装zlib库 
http://zlib.net/zlib-1.2.8.tar.gz 下载最新的 zlib 源码包,使用下面命令下载编译和安装 zlib包: 
cd /usr/local/src  
wget http://zlib.net/zlib-1.2.8.tar.gz tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8 ./configure make 
make install 
4.安装ssl(某些vps默认没装ssl) 
cd /usr/local/src 
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz tar -zxvf openssl-1.0.1c.tar.gz 
5.安装nginx 
Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤: 
cd /usr/local/src 
wget http://nginx.org/download/nginx-1.4.2.tar.gz tar -zxvf nginx-1.4.2.tar.gz cd nginx-1.4.2  
./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/src/pcre-8.34 \ --with-zlib=/usr/local/src/zlib-1.2.8 \ --with-openssl=/home/mdpi/openssl-1.0.1c \

make

make install 

4.启动nginx 
sudo /usr/local/nginx/sbin/nginx
   关闭nginx
sudo /usr/local/nginx/sbin/nginx -s stop
   重读nginx配置文件
sudo /usr/local/nginx/sbin/nginx -s reload

启动nginx出现的错误 :nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

使用命令关闭占用80端口的程序

sudo fuser -k 80/tcp

##建立软链接sudo ln -s /usr/local/nginx/sbin/nginx /etc/init.d/##启动nginx/etc/init.d/nginx
之后就打开浏览器  输入http://localhost;

测试一下吧!

!!!给nginx 设定支持PHP功能

首先编辑
sudo vi /usr/local/nginx/conf/nginx.conf

直接修改

location / {
            root   /usr/local/nginx/html/;      //网站的根路径 是 /usr/local/nginx/html/下
            index  index.html index.htm index.php;    //主页文件的类型
        }

location ~ \.php$ {
            root           /usr/local/nginx/html;       //  /网站的根路径 是 /usr/local/nginx/html/下
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;  //支持php的路径  意思就是 在/usr/local/nginx
            include        fastcgi_params;                                                                                      /html 的目录下 支持php的文件
       }

修改这两处即可让nginx 支持 php 功能

然后 sudo /etc/init.d/nginx -s reload   //重新载入nginx 的配置文件

=============================================================

相关错误:

启动nginx的时候,提示sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

解决办法: ln -s /usr/local/lib/libpcre.so.1 /usr/local/nginx/lib

ubuntu 14.04 编译安装 nginx的更多相关文章

  1. ubuntu 12.04 编译安装 nginx

    下载源码包 nginx 地址:http://nginx.org/en/download.html 编译前先安装两个包: 直接编译安装会碰到缺少pcre等问题,这时候只要到再安装两个包就ok sudo ...

  2. ubuntu 14.04编译安装xen4.4总结

    1. 安装环境 操作系统:ubuntu14.04 xen版本:xen4.4 2. 依赖包的安装 在安装xen之前先进行依赖包的安装,在不停得尝试之后,总结出以下需要安装的依赖包. sudo apt-g ...

  3. Ubuntu 14.04 编译安装 boost 1.58

    简介 Boost is a set of libraries for the C++ programming language that provide support for tasks and s ...

  4. Ubuntu 14.04 编译安装 husky

    简介 Husky是一个大数据分布式开发框架,用C++开发,因为粗粒度(coarse-grained)平台(如Spark,Hadoop,Flink)MR耗时太大,然后细粒度(fine-grained)平 ...

  5. PHP7 学习笔记(一)Ubuntu 16.04 编译安装Nginx-1.10.3、 PHP7.0.9、Redis3.0 扩展、Phalcon3.1 扩展、Swoole1.9.8 扩展、ssh2扩展(全程编译安装)

    ==================== PHP 7.0 编译安装================== wget http://cn2.php.net/get/php-7.0.9.tar.bz2/fr ...

  6. Ubuntu 14.04 上使用 Nginx 部署 Laravel

    本教程将会涉及以下工具: Ubuntu 14.04 LTS PHP 5.5 MySQL Laravel 5.0 Nginx 参考文章:Ubuntu 14.04 上使用 Nginx 部署 Laravel ...

  7. 分布式进阶(二)Ubuntu 14.04下安装Dockr图文教程(一)

    当前,完全硬件虚拟化技术(KVM.Xen.Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等.有时候对用户来说,完全的硬件虚 ...

  8. Ubuntu 14.04 LTS 安装和配置Bochs

    Ubuntu 14.04 LTS 安装和配置Bochs       系统是:Ubuntu 14.04 LTS 64位 安装的是:bochs-2.6.8 Bochs 需要在 X11 环境下运行,因此你的 ...

  9. [Ubuntu] 14.04版本安装JDK8失败

    系统:Ubuntu 14.04 编译 Android 7.1 系统需要 JDK 8,但是安装时失败, $ -jdk Reading package lists... Done Building dep ...

随机推荐

  1. Django 安全策略的 7 条总结!

    Florian Apolloner 发言主题为 Django 安全,其中并未讨论针对 SSL 协议的攻击--因为那不在 Django 涉及范围内.(如感兴趣可参考 https://www.ssllab ...

  2. client denied by server configuration

    http://blog.csdn.net/fdipzone/article/details/40512229

  3. 如何使用mysql的grant命令(详解)

    grant命令的基本格式 grant 权限 on 数据库对象 to 用户 实例一:在任意ip地址登陆的common_user用户可以对testdb数据库里的数据进行查询操作.插入操作.更新操作.删除操 ...

  4. [译]GotW #1: Variable Initialization 续

    Answer 2. 下面每行代码都做了什么? 在Q2中,我们创建了一个vector<int>且传了参数10和20到构造函数中,第一种情况下(10,20),第二种情况是{10, 20}. 它 ...

  5. Linux修改文件时候出现崩溃,产生了一个.swap交换文件,如何修复?

    有时候在用vim打开文件时提示类似以下的信息: E325: 注意 发现交换文件 ".exportcert.cpp.swp" 所有者: liuchuanliang    日期: Th ...

  6. Android调试时, "adb devices"命令提示 adb server is out of date. killing...

    C:\Users\xxxx>adb devicesadb server is out of date. killing... 查看端口, 发现被占用 C:\Users\xxxx>adb n ...

  7. HDOJ --- Super Jumping! Jumping! Jumping!

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  8. 使用jconsole检测linux服务器

    在Jboss中运行run.sh的脚本下添加如下信息: #add by step #start JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxre ...

  9. Bzoj 3171: [Tjoi2013]循环格 费用流

    3171: [Tjoi2013]循环格 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 741  Solved: 463[Submit][Status][ ...

  10. replace empty char with new string,unsafe method和native implementation的性能比较

    1: class Program 2: { 3: static void Main(string[] args) 4: { 5: string s = File.ReadAllText(@" ...