CentOS7编译安装nginx1.8.1
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7编译安装nginx1.8.1相关的知识,希望对你有一定的参考价值。
1.nginx介绍: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄 罗斯的程序设计师IgorSysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамбле р)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表 现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。 2.软件安装环境: 操作系统版本:CentOS Linux release 7.3.1611 (Core) nginx软件版本:nginx/1.8.1 3.装Nginx所需环境 3.1.更换国内YUM源,提高基础软件安装速度: mv /etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.bak wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache 3.2.gcc安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: yum install -y gcc-c++ 3.3.PCRE pcre-devel 安装 PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发 的一个二次开发库。nginx也需要此库。 yum install -y pcre pcre-devel 3.4.zlib 安装 zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以 需要在 Centos 上安装 zlib 库。 yum install -y zlib zlib-devel 3.5.OpenSSL 安装 OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议, 并提供丰富的应用程序供测试或其它目的使用。nginx不仅支持http协议,还支持https(即在ssl协议上 传输http),所以需要在Centos安装OpenSSL库。 yum install -y openssl openssl-devel 4.下载Nginx软件包 4.1.可以直接下载nginx的tar.gz安装包,然后再上传服务器安装。 下载地址: 在此推荐使用wget命令下载: wget -c https://nginx.org/download/nginx-1.8.1.tar.gz 4.2.查看下载的nginx安装包(源码包) ls -l 5.安装nginx软件包 5.1.进入nginx所在目录进行解压: tar xf nginx-1.8.1.tar.gz ll cd nginx-1.8.1/ 5.2.创建nginx用户和组: groupadd nginx useradd -g nginx -s /sbin/nologin -M nginx 5.3.Nginx配置: 5.3.1.使用默认配置: ./configure //检测安装平台的目标特征。 5.3.2.使用自定义配置: ./configure --user=nginx --group=nginx --prefix=/app/nginx1.8.1 --with-http_gzip_static_module --with-http_stub_status_module --with-http_ssl_module echo $? //检查配置是否成功 5.4.编译及安装: make //用来编译,它从Makefile中读取指令,然后编译。 echo $? //检查编译是否成功 make install //用来安装,它也从Makefile中读取指令,安装到指定的位置。 echo $? //检查安装是否成功 5.5.创建软链接: ln -s nginx1.8.1 nginx 5.6.检查配置文件ngnix.conf的正确性: /app/nginx/sbin/nginx -t 5.7.启动nginx: /app/nginx/sbin/nginx 6.nginx配置及运行情况检查 6.1.查看nginx的版本: /app/nginx/sbin/nginx -v 6.2.查看nginx的编译参数: /app/nginx/sbin/nginx -V 6.3.查看nginx进程及端口: ps -ef |grep nginx 6.4.netstat -anlp |grep nginx 6.5.测试访问: 7. Nginx 常用的几个命令: /app/nginx/sbin/nginx -s reload // 重新载入配置文件 /app/nginx/sbin/nginx -s reopen // 重启 Nginx /app/nginx/sbin/nginx -s stop // 停止 Nginx 8.附加说明:nginx编译的configure选项 configure命令是用来检测你的安装平台的目标特征的。它定义了系统的各个方面,包括nginx的被允许 使用的连接处理的方法,比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本, 执行结束时,它会创建一个Makefile文件。 nginx的configure命令支持以下参数: --prefix=path 定义一个目录,存放服务器上的文件 ,也就是nginx的安装目录。默认使用 /usr/local/nginx。 --sbin-path=path 设置nginx的可执行文件的路径,默认为user/sbin/nginx. --conf-path=path 设置在nginx.conf配置文件的路径。nginx允许使用不同的配置文件启动,通过命令 行中的-c选项。默认为prefix/conf/nginx.conf. --pid-path=path 设置nginx.pid文件,将存储的主进程的进程号。安装完成后,可以随时改变的文件 名,在nginx.conf配置文件中使用PID指令。默认情况下,文件名为prefix/logs/nginx.pid。 --error-log-path=path 设置主错误,警告,和诊断文件的名称。安装完成后,可以随时改变的文件名 ,在nginx.conf配置文件中 使用的error_log指令。默认情况下,文件名为prefix/logs/error.log。 --http-log-path=path 设置主请求的HTTP服务器的日志文件的名称。安装完成后,可以随时改变的文 件名,在nginx.conf配置文件中使用 的access_log指令。默认情况下,文件名为prefix/logs/access .log。 --user=name 设置nginx工作进程的用户。安装完成后,可以随时更改的名称在nginx.conf配置文件中 使用的user指令。默认的用户名是nobody。 --group=name 设置nginx工作进程的用户组。安装完成后,可以随时更改的名称在nginx.conf配置文件 中使用的user指令。默认的为非特权用户。 --with-select_module --without-select_module 启用或禁用构建一个模块来允许服务器使用 select()方法。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。 --with-poll_module --without-poll_module 启用或禁用构建一个模块来允许服务器使用poll()方法 。该模块将自动建立,如果平台不支持的kqueue,epoll,rtsig或/dev/poll。 --without-http_gzip_module 不编译压缩的HTTP服务器的响应模块。编译并运行此模块需要zlib库。 --without-http_rewrite_module 不编译重写模块。编译并运行此模块需要PCRE库支持。 --without-http_proxy_module 不编译http_proxy模块。 --with-http_ssl_module 使用https协议模块。默认情况下,该模块没有被构建。建立并运行此模块的 OpenSSL库是必需的。 --with-pcre=path 设置PCRE库的源码路径。PCRE库的源码(版本4.4 - 8.30)需要从PCRE网站下载 并解压。其余的工作是Nginx的./ configure和make来完成。正则表达式使用在location指令和ngx_htt p_rewrite_module 模块中。 --with-pcre-jit 编译PCRE包含“just-in-timecompilation”(1.1.12中, pcre_jit指令)。 --with-zlib=path 设置的zlib库的源码路径。要下载从zlib(版本1.1.3 - 1.2.5)的并解压。其余 的工作是Nginx的./configure和make完成。ngx_http_gzip_module模块需要使用zlib 。 --with-cc-opt=parameters 设置额外的参数将被添加到CFLAGS变量。例如,当你在FreeBSD上使用PCRE 库时需要使用:--with-cc-opt="-I/usr/local/include。.如需要需要增加 select()支持的文件数量: --with-cc-opt="-DFD_SETSIZE=2048"。 --with-ld-opt=parameters 设置附加的参数,将用于在链接期间。例如,当在FreeBSD下使用该系统的 PCRE库,应指定:--with-ld-opt="-L/usr/local/lib"。
本文出自 “厚积薄发” 博客,请务必保留此出处http://oudonghang.blog.51cto.com/7100996/1919172
以上是关于CentOS7编译安装nginx1.8.1的主要内容,如果未能解决你的问题,请参考以下文章