linux学习:Nginx--简介与安装-01

一、简介

1.1 Nginx是什么

Nginx是一款轻量级的Web服务器,也是一款轻量级的反向代理服务器

1.2 Nginx能干什么

a、直接支持Rails和PHP的程序

b、作为HTTP反向代理服务器

c、作为负载均衡服务器

d、作为邮件代理服务器

e、帮助实现前缀动静态分离

.....

1.3 Nginx特点

高稳定、高性能、资源占用少、功能丰富、模块化结构、支持热部署

二、安装

前置条件:

提醒:

请先检查/usr/bin下的gcc与make文件是不是空的,空的请先卸载掉,我就是因为没有卸载,所以出现的下面怎么多的坑。。。

a、需要gcc,系统自带了,没有的话,需要先安装

查看:

    rpm -qa|grep gcc

安装:

    yum install gcc gcc-c++ autoconf autmake libtool make

b、需要pcre,安装的命令如下:

     yum install pcre*

c、需要zlib,安装的命令如下:

    yum install zlib zlib-devel

d、如果需要支持ssl的话,安装OpenSSL,安装命令如下:

    yum install openssl openssl-devel

e、上http://nginx.org/去下载源码包

安装:

第1步:

a、解压到/opt下,进入到nginx目录下

b、安装

     ./configure --prefix=/usr/local/nginx --with-http_stub_status_module

说明:

--prefix:安装路径

--with:配置选项

异常:

解决:先卸载gcc

        [[email protected] ~]# rpm -qa gcc
        gcc-4.4.7-17.el6.x86_64
        [[email protected] ~]# rpm -e gcc-4.4.7-17.el6.x86_64
        error: Failed dependencies:
	    gcc = 4.4.4 is needed by (installed) libtool-2.2.6-15.5.el6.x86_64
        [[email protected] ~]# rpm -e libtool-2.2.6-15.5.el6.x86_64
        [[email protected] ~]# rpm -qa gcc
        [[email protected] nginx-1.10.3]# gcc
        -bash: /usr/bin/gcc: No such file or directory

卸载成功

再次安装gcc:

         yum install gcc gcc-c++ autoconf autmake libtool make

进入nginx目录下安装

        ./configure --prefix=/usr/local/nginx --with-http_stub_status_module

成功:

第2步:make、make install

异常:没有任何信息

查看/usr/bin下的make,发现是空的:

卸载make:

        [[email protected] nginx-1.10.3]# rpm -qa make
        make-3.81-23.el6.x86_64
        [[email protected] nginx-1.10.3]# rpm -e --allmatches --nodeps make-3.81-23.el6.x86_64
        install-info: /usr/share/info/make.info.gz: empty file
        [[email protected] nginx-1.10.3]# rpm -qa make
        [[email protected] nginx-1.10.3]#

安装make:

        yum -y install libtool make

make成功。

make install成功。

第3步:启动测试

进入到安装目录下的sbin目录:

    cd /usr/local/nginx/sbin

测试配置文件:

    ./nginx -t

启动:默认是80端口

        [[email protected] sbin]# ./nginx

停止:./nginx -s stop 或者 ./nginx -s quit

重启:./nginx -s reload

查看进程:

    [[email protected] sbin]# ps -ef | grep nginx
    root     16984     1  0 20:15 ?        00:00:00 nginx: master process ./nginx
    nobody   16985 16984  0 20:15 ?        00:00:00 nginx: worker process
    root     16990  1405  0 20:21 pts/0    00:00:00 grep nginx

Nginx安装配置选项:

--prefix=<path>

安装路径,如果没有指定,默认为/usr/local/nginx。

--sbin-path=<path>

nginx可执行命令的文件,如果没有指定,默认为<prefix>/sbin/nginx。

--conf-path=<path>

在没有使用-c参数指定的情况下nginx.conf的默认位置,如果没有指定,默认为<prefix>/conf/nginx.conf。

--pid-path=<path>

nginx.pid的路径,如果没有在nginx.conf中通过“pid”指令指定,默认为<prefix>/logs/nginx.pid。

--lock-path=<path>

nginx.lock文件路径,如果没有指定,默认为<prefix>/logs/nginx.lock。

--error-log-path=<path>

当没有在nginx.conf中使用“error_log”指令指定时的错误日志位置,如果没有指定,默认为<prefix>/logs/error.log。

--http-log-path=<path>

当没有在nginx.conf中使用“access_log”指令指定时的访问日志位置,如果没有指定,默认为<prefix>/logs/access.log。

--user=<user>

当没有在nginx.conf中使用“user”指令指定时nginx运行的用户,如果没有指定,默认为“nobody”。

--group=<group>

当没有在nginx.conf中使用“user”指令指定时nginx运行的组,如果没有指定,默认为“nobody”。

--builddir=DIR

设置构建目录。

--with-rtsig_module

启用rtsig模块。

--with-select_module –without-select_module

如果在configure的时候没有发现kqueue, epoll,rtsig或/dev/poll其中之一,select模块始终为启用状态。

--with-poll_module –without-poll_module

如果在configure的时候没有发现kqueue, epoll,rtsig或/dev/poll其中之一,poll模块始终为启用状态。

--with-http_ssl_module

启用ngx_http_ssl_module,启用SSL支持并且能够处理HTTPS请求。需要OpenSSL,在Debian系统中,对应的包为libssl-dev。

--with-http_realip_module

启用ngx_http_realip_module

--with-http_addition_module

启用ngx_http_addition_module

--with-http_sub_module

启用ngx_http_sub_module

--with-http_dav_module

启用ngx_http_dav_module

--with-http_flv_module

启用ngx_http_flv_module

--with-http_stub_status_module

启用”server status”(服务状态)页

--without-http_charset_module

禁用ngx_http_charset_module

--without-http_gzip_module

禁用ngx_http_gzip_module,如果启用,需要zlib包。

--without-http_ssi_module

禁用ngx_http_ssi_module

--without-http_userid_module

禁用ngx_http_userid_module

--without-http_access_module

禁用ngx_http_access_module

--without-http_auth_basic_module

禁用ngx_http_auth_basic_module

--without-http_autoindex_module

禁用ngx_http_autoindex_module

--without-http_geo_module

禁用ngx_http_geo_module

--without-http_map_module

禁用ngx_http_map_module

--without-http_referer_module

禁用ngx_http_referer_module

--without-http_rewrite_module

禁用ngx_http_rewrite_module。如果启用,需要PCRE包。

--without-http_proxy_module

禁用ngx_http_proxy_module

--without-http_fastcgi_module

禁用ngx_http_fastcgi_module

--without-http_memcached_module

禁用ngx_http_memcached_module

--without-http_limit_zone_module

禁用ngx_http_limit_zone_module

--without-http_empty_gif_module

禁用ngx_http_empty_gif_module

--without-http_browser_module

禁用ngx_http_browser_module

--without-http_upstream_ip_hash_module

禁用ngx_http_upstream_ip_hash_module

--with-http_perl_module

启用ngx_http_perl_module

--with-perl_modules_path=PATH

为perl模块设置路径

--with-perl=PATH

为perl库设置路径

--http-client-body-temp-path=PATH

为http连接的请求实体临时文件设置路径,如果没有指定,默认为<prefix>/client_body_temp

--http-proxy-temp-path=PATH

为http代理临时文件设置路径,如果没有指定,默认为<prefix>/proxy_temp

--http-fastcgi-temp-path=PATH

为http fastcgi临时文件设置路径,如果没有指定,默认为<prefix>/fastcgi_temp

--without-http

禁用HTTP服务

--with-mail

启用IMAP4/POP3/SMTP代理模块

--with-mail_ssl_module

启用ngx_mail_ssl_module

--with-cc=PATH

设置C编译器路径

--with-cpp=PATH

设置C预处理器路径

--with-cc-opt=OPTIONS

变量CFLAGS中附加的参数,用于FreeBSD中的PCRE库,同样需要指定–with-cc-opt=”-I /usr/local/include”,如果我们使用select()函数则需要同时增加文件描述符数量,可以通过–with-cc-opt=”-D FD_SETSIZE=2048”指定。

--with-ld-opt=OPTIONS

通过连接器的附加参数,用于FreeBSD中的PCRE库,同样需要指定–with-ld-opt=”-L /usr/local/lib”。

--with-cpu-opt=CPU

指定编译的CPU,可用的值为: pentium, pentiumpro, pentium3, pentium4,athlon, opteron, amd64, sparc32, sparc64, ppc64

--without-pcre

禁用PCRE库文件,同时将禁用HTTP rewrite 模块,如果要在”location”指令中使用正则表达式,同样需要PCRE库。

--with-pcre=DIR

设置PCRE库源文件路径。

--with-pcre-opt=OPTIONS

在编译时为PCRE设置附加参数。

--with-md5=DIR

设置md5库源文件路径。

--with-md5-opt=OPTIONS

在编译时为md5设置附加参数。

--with-md5-asm

使用md5汇编源。

--with-sha1=DIR

设置sha1库源文件路径。

--with-sha1-opt=OPTIONS

在编译时为sha1设置附加参数。

--with-sha1-asm

使用sha1汇编源。

--with-zlib=DIR

设置zlib库源文件路径。

--with-zlib-opt=OPTIONS

在编译时为zlib设置附加参数。

--with-zlib-asm=CPU

为指定的CPU使用zlib汇编源进行优化,可用值为: pentium, pentiumpro。

--with-openssl=DIR

设置openssl库源文件路径。

--with-openssl-opt=OPTIONS

在编译时为openssl设置附加参数。

--with-debug

启用debug记录。

--add-module=PATH

增加一个在PATH中的第三方模块。

时间: 2024-10-06 22:49:47

linux学习:Nginx--简介与安装-01的相关文章

Git 学习笔记&lt;简介与安装&gt; (一)

Git,开源中国以及GitHub所使用的系统, Is A 一个分布式版本控制系统 Be Used to 为团队合作写代码提供方便的管理系统.几乎满足你所有关于合作写代码的幻想. Has 本地端:工作区.版本库 (版本库还含有一个暂存区) 远程仓库:版本库(用来储存版本库的服务器) How To Install Linux: 首先,先输入git,看看是否安装Git: $ gitThe program 'git' is currently not installed. You can install

Linux学习笔记——虚拟机中安装VMware Tools

0 前言 VMware Tools是VMware虚拟机中自带的一种增强工具,只有在VMware虚拟机中安装好了VMware Tools,才能实现主机与虚拟机之间的文件共享,实现文件在虚拟机之间的复制粘贴. 最近购买了周立功的一款EasyARM开发板,作为树莓派Linux学习的补充.在虚拟机中安装了周立功提供的ubuntu镜像,总觉得在主机和PC机之间直接复制粘贴才爽,所以又安装了Vmware Tools.     [相关博文] [ Linux学习笔记--vmware plarer中安装ubunt

RedHat Linux 7.2 简介与安装

1.RedHat Linux7.2简介 红帽公司在2014年6月11日正式发布企业Linux 7版本,该版本在裸服务器,虚拟机.IaaS.PaaS等方面都得到了 加强,更靠以及更强大的数据中心环境可满足各种商业的要求.RHEL7为企业提供一个内聚的.统一的基础设施架构以及最新的服务环境.包括Linux容器.大数据以及跨物理系统.虚拟机和云的混合云平台. 2.RedHat Linux7值得关注的更新内容: ①显著提升Docker的兼容性-----Docker是一个开源的应用容器引擎,让开发者可以打

Linux学习-Nginx安装

1.安装 yum install -y nginx 2.启动nginx systemctl start nginx 3.重启nginx systemctl restart nginx 4.设置nginx开机自启动 systemctl enable nginx 5.修改配置文件(修改配置文件后需要重启) vi /etc/nginx/nginx.conf 原文地址:https://www.cnblogs.com/zhensha/p/10994704.html

Linux学习——卸载Ubuntu,安装CentOS,第一次使用命令

最近,看了相关的资料,发现Ubuntu不是很利于学习Linux操作系统,而CentOS比较有利于学习Linux操作系统,就卸载了. 当然,对于菜鸟,自然是很没有主见. 卸载Ubuntu感觉很奇怪,下来Marfix输命令,出问题了,不过重启后就直接进WIN7了,教学可在Linux公社搜索. 安装CentOs看的此贴 http://www.linuxidc.com/Linux/2012-05/60828.htm,不过感觉他教的有问题,他是在逻辑分区(非C盘)安装,但是我的电脑显示错误,我就想到Ubu

linux nload命令简介及安装方法

第一步:nload命令简介 nload 命令用于查看linux网络流量状况,实时输出.可以理解为是一个控制台应用程序,用来实时监测网络流量和带宽使用情况的命令. 使用可视化的界面显示流入和留出系统的网络带宽数据. 安装后的使用截图(screenshot)如下: 第二步:nload下载 安装前最好安装以下依赖 yum install gcc gcc-c++ ncurses-devel  官网为:http://www.roland-riegel.de/nload/ xshell登陆到linux,然后

Linux下Nginx+PHP 简单安装配置

测试环境 Linux 2.6.18nginx-1.0.4 http://www.nginx.org/php-5.3.6 http://www.php.net/ 一,安装Nginxwget http://nginx.org/download/nginx-1.0.4.tar.gztar -zxvf nginx-1.0.4.tar.gzcd nginx-1.0.4./configure --prefix=/data/apps/nginx-1.0.4make && make install 二,安

【Linux学习七】软件安装

环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 一.编译安装1.解压 源码文件是压缩包 要先解压tar -zxvf tengine-2.1.0.tar.gz 2.进入解压包 查看README文件 里面有对软件的介绍和安装指导3.查看./configure --help 看一下有哪些安装参数,设定参数来安装4.安装装编译器  检查依赖:是否有对应的编译器 [[email protected] tengine-2.1.

nginx简介及安装

如果你听说过apache软件,那么就会很快熟悉nginx软件,与apache软件类似,nginx(engine x)是一个开源的,支持高性能,高并发的www的服务和代理服务软件 nginx因具有高并发(特别是静态资源).占用系统资源少等,且功能丰富 在功能应用方面,nginx不但是一个优秀的web服务软件,还具有反向代理负载均衡和缓存服务功能,在反向代理.负载均衡方面,它类似于大名鼎鼎的LVS负载均衡及HAPROXY等专业代理软件,但是NGINX部署起来更方便,在缓存服务功能方面,它又类似于Sq

Redis 学习之简介及安装

一.redis简介 Redis是一个开源的,先进的key-value存储.它通常被称为数据结构服务器,因为键可以包含字符串.哈希.链表.集合和有序集合. 支持的数据类型:string(字符串).list(集合).set(集合).zset(有序集合). 支持的操作:这些数据类型支持push/pop.add/remove 等丰富的数据操作.支持不同方式的排序. 缓存:redis为了保证效率数据都是缓存在内存中的,为了防止系统突然崩溃从而导致内存中的数据丢失,它也可以周期性的把更新的数据写入磁盘或者把