nginx笔记----安装

时间:2022-07-20 09:33:00

nginx的安装

./configure

make && make install

(一)准备条件:

1、GCC---gun编译器集合

Nginx是一个由C语言编写的程序,因此首先需要在系统上安装衣一个编译工具

gcc是一个开源编译器集合,是用于处理各种各样的语言:C、C++、JAVA、Ada、FORTRAN等等。

首先确认系统上是否有GCC

[root]#gcc

没有请先安装。

2、PCRE库

在Nginx编译需要PCRE,因为Nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式。需要安装pcre和pcre-devel

用yum就能安装。

3、Zlib库

Zlib库提供了开发人员的压缩算法,在nginx的模块中需要使用gzip压缩。

需要安装zlib和zlib-devel

用yum就可以安装

4、OpenSSL(可选)

在Nginx中如果需要为服务器提供安全则需要用到OpenSSL库。

需要安装的是openssl和openssl-devel。

用yum就可以安装。

_______________________________________________________________________________

./configure的模块用哪个就加哪个一般指定一下安装路劲和属主属组

_______________________________________________________________________________

(二)编译Nginx--./configure

1、路径选项

--prefix=...:指定安装Nginx的基础目录

--sbin-path=...:Nginx二进制文件安装路径

--conf-path=...:主要配置文件放置的路劲

--error-log-path=...:错误日志的存放路径

--pid-path=...:指定Nginx的pid文件的路劲

--lock-path=...:锁文件(lock file)的存放路径

--with-perl_modules_path=...:定义perl模块的路径(如果需要需要包含另外的perl模块,必须定义该参数)

--with-perl=...:perl二进制文件的路径(如果向执行一个perl脚本,必须设置该路径)

--http-log-path=...:定义被访问的日志文件存放路径

--http-client-body-temp-path=...:该目录用于存储客户端请求的临时文件

--http-proxy-temp-path=...:该目录用于代理存储临时文件

--http-fastcgi-temp-path=...: 指定用于http fastcgi模块使用的临时文件的存放

--duilddir=...:指定创建应用程序的位置

2、先决条件选项

--with-cc=...:指定一个备用的c编译器的位置

--with-cpp=...:指定一个备用的c预处理器的位置

--with-cc-opt=...:定义额外的选项,然后在命令行传递给c编译器

--with-id-opt=...:定义额外的选项,然后在命令行传递给c编译器

--without-prce:不使用PCRE库

--with-prce:强制使用pcre库

--with-pcre=...:允许指定PCRE库的源代码

--with-md5=...:指定MD5库源代码的路径

--with-zlib=...:指定zlib库的源代码

with-openssl=...:指定openssl库的源码路径

3、选择模块(默认开启的)

--without-http_charset_module               禁用Charset模块,该模块用于对网页重新编码

--without-http_gzip_module                     禁用Gzip压缩模块

--without-http_ssi_module                        禁用服务器端包含模块

--without-http_userid_moudle                 禁止用户ID模块。该模块为用户通过cookie验证身份

--without-http_access_module                禁止访问模块,对于指定的IP段,允许访问配置

--without-http_auth_basic_module         禁止基本的认证模块

--without-http_autoindex_module           禁止自动索引模块

--without-http_geo_module             禁止GEO模块,该模块允许你定义依赖于IP地址段的变量

--without-http_map_module                     禁止使用MAP模块,该模块允许你声明map区段

--without-http_referer_module                禁止Referer控制模块

--without-http_rewrite_module               禁止Rewrite模块

--without-http_proxy_module                   禁止代理模块。该模块用于向其他服务器传输请求

--without-http_fastcgi_module                 禁用FastCGI。该模块用于与FastCGI进程配合工作

--without-http_memcached_module      禁用Memcached。该模块用于与memcached守护进程配合工作

4、默认禁用的模块

--with-http_ssl_module                     开启SSL模块,支持使用HTTPS协议的网页

--with-http_realip_module                开启Real IP的支持,该模块用于从客户请求的头数据中读取Real Ip地址

--with-http_addition_module           开启Addtion模块,该模块允许你追加或前置数据到相应的主体部分

--with-http_xslt_module                    开启XSLT模块的支持,该模块实现XSL转化为XML文档

--with-http_image_filter_module   开启Image Filter模块,图片过滤模块似乎是这样的

5、用户和组选项

--user=``` 指定启动Nginx进程的默认用户

--group=```指定启动Nginx进的的默认用户组

nginx的安装

./configure

make && make install

(一)准备条件:

1、GCC---gun编译器集合

Nginx是一个由C语言编写的程序,因此首先需要在系统上安装衣一个编译工具

gcc是一个开源编译器集合,是用于处理各种各样的语言:C、C++、JAVA、Ada、FORTRAN等等。

首先确认系统上是否有GCC

[root]#gcc

没有请先安装。

2、PCRE库

在Nginx编译需要PCRE,因为Nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式。需要安装pcre和pcre-devel

用yum就能安装。

3、Zlib库

Zlib库提供了开发人员的压缩算法,在nginx的模块中需要使用gzip压缩。

需要安装zlib和zlib-devel

用yum就可以安装

4、OpenSSL(可选)

在Nginx中如果需要为服务器提供安全则需要用到OpenSSL库。

需要安装的是openssl和openssl-devel。

用yum就可以安装。

_______________________________________________________________________________

./configure的模块用哪个就加哪个一般指定一下安装路劲和属主属组

_______________________________________________________________________________

(二)编译Nginx--./configure

1、路径选项

--prefix=...:指定安装Nginx的基础目录

--sbin-path=...:Nginx二进制文件安装路径

--conf-path=...:主要配置文件放置的路劲

--error-log-path=...:错误日志的存放路径

--pid-path=...:指定Nginx的pid文件的路劲

--lock-path=...:锁文件(lock file)的存放路径

--with-perl_modules_path=...:定义perl模块的路径(如果需要需要包含另外的perl模块,必须定义该参数)

--with-perl=...:perl二进制文件的路径(如果向执行一个perl脚本,必须设置该路径)

--http-log-path=...:定义被访问的日志文件存放路径

--http-client-body-temp-path=...:该目录用于存储客户端请求的临时文件

--http-proxy-temp-path=...:该目录用于代理存储临时文件

--http-fastcgi-temp-path=...: 指定用于http fastcgi模块使用的临时文件的存放

--duilddir=...:指定创建应用程序的位置

2、先决条件选项

--with-cc=...:指定一个备用的c编译器的位置

--with-cpp=...:指定一个备用的c预处理器的位置

--with-cc-opt=...:定义额外的选项,然后在命令行传递给c编译器

--with-id-opt=...:定义额外的选项,然后在命令行传递给c编译器

--without-prce:不使用PCRE库

--with-prce:强制使用pcre库

--with-pcre=...:允许指定PCRE库的源代码

--with-md5=...:指定MD5库源代码的路径

--with-zlib=...:指定zlib库的源代码

with-openssl=...:指定openssl库的源码路径

3、选择模块(默认开启的)

--without-http_charset_module               禁用Charset模块,该模块用于对网页重新编码

--without-http_gzip_module                     禁用Gzip压缩模块

--without-http_ssi_module                        禁用服务器端包含模块

--without-http_userid_moudle                 禁止用户ID模块。该模块为用户通过cookie验证身份

--without-http_access_module                禁止访问模块,对于指定的IP段,允许访问配置

--without-http_auth_basic_module         禁止基本的认证模块

--without-http_autoindex_module           禁止自动索引模块

--without-http_geo_module             禁止GEO模块,该模块允许你定义依赖于IP地址段的变量

--without-http_map_module                     禁止使用MAP模块,该模块允许你声明map区段

--without-http_referer_module                禁止Referer控制模块

--without-http_rewrite_module               禁止Rewrite模块

--without-http_proxy_module                   禁止代理模块。该模块用于向其他服务器传输请求

--without-http_fastcgi_module                 禁用FastCGI。该模块用于与FastCGI进程配合工作

--without-http_memcached_module      禁用Memcached。该模块用于与memcached守护进程配合工作

4、默认禁用的模块

--with-http_ssl_module                     开启SSL模块,支持使用HTTPS协议的网页

--with-http_realip_module                开启Real IP的支持,该模块用于从客户请求的头数据中读取Real Ip地址

--with-http_addition_module           开启Addtion模块,该模块允许你追加或前置数据到相应的主体部分

--with-http_xslt_module                    开启XSLT模块的支持,该模块实现XSL转化为XML文档

--with-http_image_filter_module   开启Image Filter模块,图片过滤模块似乎是这样的

5、用户和组选项

--user=``` 指定启动Nginx进程的默认用户

--group=```指定启动Nginx进的的默认用户组

安装也就这些东西了,不需要的模块就尽量关掉,记得把页面单独mount的一个硬盘上分散i/o,还有就是Noatime,反正就是尽量减少i/o,内存和cpu的负载