一、下载

从官网http://nginx.org/en/download.html 下载稳定版(目前最新稳定版是1.6.2)

二、解压

tar zxf nginx-1.6.2.tar.gz
cd nginx-1.6.2

三、配置

./configure --prefix=/opt/app/nginx/1.6.2 --user=cargo

注:prefix指定安装目录,user指定运行nginx的用户身份

通常第一次并不会顺利成功,如果出现:

./configure: error: the HTTP rewrite module requires the PCRE library.

表示当前机器上没有PCRE包,可以手动安装:

sudo yum -y install pcre-devel

再次运行./configure --prefix=/opt/app/nginx/1.6.2 --user=cargo,又有新的错误:

./configure: error: the HTTP gzip module requires the zlib library.

类似的,手动安装zlib包

sudo yum -y install zlib-devel

继续重复刚才的./configure命名,如果出现:

./configure: error: the HTTP cache module requires md5 functions from OpenSSL library.

继续手动安装open-ssl

yum -y install openssl openssl-devel

一切ok后,接下来可以编译了

四、编译

make install

注:需要gcc环境,如果没有安装gcc,请先安装gcc,方法 yum -y install gcc

顺利的话,会在/opt/app/nginx/1.6.2路径下生成很多文件

五、启动

cd /opt/app/nginx/1.6.2/sbin

./nginx

如果出现:

nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)

多半是80端口被占用

cd /opt/app/nginx/1.6.2/conf

vi nginx.conf

找到下面的内容:

server {
          listen       ;
          server_name  localhost;
 
          #charset koi8-r;

将80端口改成其它端口,比如7040(当然也可以把跟80冲突的进程给kill掉),然后再回到sbin目录,重复./nginx

正常的话,用ps -ef|grep nginx应该可以看到2个进程:

[cargo@vm-vmw1813-app sbin]$ ps -ef|grep nginx
cargo     4180     1  0 14:38 ?        00:00:00 nginx: master process ./nginx
cargo     4181  4180  0 14:38 ?        00:00:00 nginx: worker process

表示启动正常,可以用浏览器 访问 http://ip:7040/ 如果出现以下图片:

恭喜,安装成功!

其它一些有用的启动参数:

Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]

Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: /usr/local/Cellar/nginx/1.8.0/)
-c filename : set configuration file (default: /usr/local/etc/nginx/nginx.conf)
-g directives : set global directives out of configuration file

特别要提一下-V(大写),有时候不知道配置文件在哪,用这个参数就能查出来。  

六、卸载、停止服务

卸载只要把目录删除掉就行了,如果自己为了运维方便,做了其它启动的脚本,同步删除

停止服务,直接kill掉nginx进程最直接。

当然也可以 ./nginx -s stop

nginx学习(1):编译、安装、启动的更多相关文章

  1. nginx学习与配置-安装与启动关闭管理

    nginx服务器的安装 安装准备: nginx依赖于pcre库,要先安装pcre yum install pcre pcre-devel cd /usr/local/src/ wget wget ht ...

  2. Nginx服务及编译安装

    第1章 Nginx 1.1 nginx的概念 Nginx("engine x")是一个开源的.支持高性能.高并发的WWW服务和代理服务软件,具有高开发(特别是静态资源),占用系统资 ...

  3. nginx学习(一):安装nginx

    学习下nginx,本篇文章主要讲解下在linux下安装nginx 下载nginx 安装包 1.去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本: 2.上传tar包到li ...

  4. mac下Nginx+lua模块编译安装

    Nginx的nb之处就不说了,lua也是一个小巧的脚本语言,由标准C编写而成,几乎可以运行在所有的平台上,也非常强大,其他特性请自行度娘.nginx_lua_module是由淘宝的工程师清无(王晓哲) ...

  5. Nginx PHP MySql 编译安装

    以CentOS5.6为平台编译安装.确保系统已经安装gcc/gcc-c++编译器! 1.Nginx-1.0.14 2.PHP-5.3.10 3.MySql-5.1.61 安装相关依赖开发库: auto ...

  6. Nginx 之一:编译安装nginx 1.8.1 及配置

    一:基介绍 官网地址www.nginx.org,nginx是由1994年毕业于俄罗斯国立莫斯科鲍曼科技大学的同学为俄罗斯rambler.ru公司开发的,开发工作最早从2002年开始,第一次公开发布时间 ...

  7. nginx入门之编译安装

    nginx是什么 nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件.它是一个俄罗斯人lgor sysoev开发的,作者将源代码开源出来供全球使用. nginx比它大哥apache性 ...

  8. nginx入门与实战 安装 启动 配置nginx Nginx状态信息(status)配置 正向代理 反向代理 nginx语法之location详解

    nginx入门与实战 网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web ...

  9. centos 下nginx源码编译安装

    1.下载nginx 进入nginx官网下载nginx的稳定版本,我下载的是1.10.3. 下载:wget http://nginx.org/download/nginx-1.10.3.tar.gz 解 ...

  10. nginx软件的编译安装步骤

    1.1 检查软件安装的系统环境 [root@web02 conf]# cat /etc/redhat-release CentOS release 6.8 (Final) [root@web02 co ...

随机推荐

  1. MVC数据库数据分页显示

    首先从数据库获取数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; usin ...

  2. WPF学习之路(二) XAML(续)

    属性 简单属性 前面用到的Width/Height都是简单属性,其赋值一定要放到双引号里 XAML解析器会根据属性的类型执行隐式转换 与C#的区别 SolidBrush.Color = Colors. ...

  3. List对象去重

    public class User { public int Id { get; set; } public string Name { get; set; } } public class User ...

  4. partproble在RHEL 6下无法更新分区信息

    在RHEL5.x版本下面,在添加磁盘分区等操作后,一直使用partproble命令使内核重新读取分区表信息,从而不用重新启动.但是最近在RHEL 6(Red Hat Enterprise Linux ...

  5. centos7安装CDH5.5.0

    1.安装jdk mkdir -p /usr/java tar zxvf jdk-7u80-linux-x64.tar.gz -C /usr/java/ vi /etc/profile export J ...

  6. ORA-01858: 在要求输入数字处找到非数字字符

    数据库   date  字段问题  insert into  WK_RE_LE  (DACL_FILE_ID,DACL_GROUP_ID,BDCDYH,DACL_LENGTH,ISVALID,DACL ...

  7. 烂泥:apache虚拟主机的学习与应用

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 要配置apache的虚拟主机,我们需要分以下几步进行: 1. 检查apache虚拟主机模块 2. 开启apache虚拟主机功能 3. httpd-vho ...

  8. mkfifo

    管道是Linux的十种文件类型之一,使用管道通信本质上还是以文件作为通信的媒介 有名管道+无名管道=管道 有名管道(FIFO文件):就是 有文件名的管道, 可以用于任意两个进程间的通信 无名管道(pi ...

  9. openwrt修改flash大小

    前言 默认openwrt trunk编译出来的flash大小为8M,但是我们手上的板子可能flash大小更大,本文以MT7620a为例,将其flash大小由8M修改为16M或者32M 增加dts文件 ...

  10. spring为什么不能注入static变量

    Spring 依赖注入 是依赖 set方法 set方法是 是普通的对象方法 static变量是类的属性 @Autowired private static JdbcTemplate jdbcTempl ...