CentOs7.3 编译安装 Nginx 1.9.9

CentOs7.3 编译安装 Nginx 1.9.9

安装

安装依赖

$ yum install -y  gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel

下载并解压

$ cd /opt/
$ wget http://nginx.org/download/nginx-1.9.9.tar.gz
$ tar zxvf nginx-1.9.9.tar.gz

编译

编译时候可以指定编译参数,参考文章尾部:常用编译选项

$ cd nginx-1.9.9
$ ./configure 

安装

$ make
$ make && make install

默认安装在/usr/local/nginx

里面有四个目录:

  • conf: 配置文件夹,最重要文件是nginx.conf
  • html: 静态网页文件夹
  • logs: 日志文件夹
  • sbin: nginx 的可执行文件,启动、停止等操作

常用命令

正确性检查

每次修改nginx配置文件后都要进行检查

$ /usr/local/nginx/sbin/nginx -t
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

启动

$ /usr/local/nginx/sbin/nginx

如果不能访问,检查防火墙并关闭防火墙

centos 6.x 关闭 iptables

$ service iptables status # 查询防火墙状态命令
$ service iptables stop # 关闭命令

centos 7.x 关闭firewall

$ ssystemctl status  firewalld.service # 查看状态
$ systemctl stop firewalld.service # 停止firewall

浏览器输入本机IP ,看到如下内容证明安装成功

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.

停止

$ /usr/local/nginx/sbin/nginx -s stop

重启

$ /usr/local/nginx/sbin/nginx -s reload

常用编译选项

./configure \
--prefix=/home/nginx \
--sbin-path=/usr/sbin/nginx \
--user=nginx \
--group=nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/home/log/nginx/error.log \
--http-log-path=/home/log/nginx/access.log \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_realip_module \
--pid-path=/home/run/nginx.pid \
--with-pcre=/home/software/pcre-8.35 \
--with-zlib=/home/software/zlib-1.2.8 \
--with-openssl=/home/software/openssl-1.0.1i

选项说明

--prefix=/home/nginx \ Nginx安装的根路径,所有其它路径都要依赖该选项
--sbin-path=/usr/sbin/nginx \ nginx的可执行文件的路径(nginx)
--user=nginx \ worker进程运行的用户
--group=nginx \ worker进程运行的组
--conf-path=/etc/nginx/nginx.conf \  指向配置文件(nginx.conf)
--error-log-path=/var/log/nginx/error.log \ 指向错误日志目录
--http-log-path=/var/log/nginx/access.log \  设置主请求的HTTP服务器的日志文件的名称
--with-http_ssl_module \  使用https协议模块。默认情况下,该模块没有被构建。前提是openssl与openssl-devel已安装
--with-http_gzip_static_module \  启用ngx_http_gzip_static_module支持(在线实时压缩输出数据流)
--with-http_stub_status_module \  启用ngx_http_stub_status_module支持(获取nginx自上次启动以来的工作状态)
--with-http_realip_module \  启用ngx_http_realip_module支持(这个模块允许从请求标头更改客户端的IP地址值,默认为关)
--pid-path=/var/run/nginx.pid \  指向pid文件(nginx.pid)

设置PCRE库的源码路径,如果已通过yum方式安装,使用–with-pcre自动找到库文件。使用–with-pcre=PATH时,需要从PCRE网站下载pcre库的源码(版本4.4 – 8.30)并解压,剩下的就交给Nginx的./configure和make来完成。perl正则表达式使用在location指令和 ngx_http_rewrite_module模块中。
--with-pcre=/home/software/pcre-8.35 \ 

指定 zlib(版本1.1.3 – 1.2.5)的源码解压目录。在默认就启用的网络传输压缩模块ngx_http_gzip_module时需要使用zlib 。
--with-zlib=/home/software/zlib-1.2.8 \

指向openssl安装目录
--with-openssl=/home/software/openssl-1.0.1i

Contact

  • 作者:鹏磊
  • 出处:http://www.ymq.io
  • Email:admin@souyunku.com
  • 版权归作者所有,转载请注明出处
  • Wechat:关注公众号,搜云库,专注于开发技术的研究与知识分享

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C/C++基础

GitHub Desktop常见用法

这里记录我使用git的点滴,以需要完成的功能为切入点来讲解需要使用的命令,供日后参考,当然再结合“git命令大全”这类较全面的git命令介绍的文章,会更好的熟悉...

2733
来自专栏开发之途

Git的使用教程(1)

3085
来自专栏云计算教程系列

如何在CentOS 7上编写自定义系统审计规则

Linux审计系统创建审计跟踪,这是一种跟踪系统上各种信息的方法。它可以记录大量数据,如事件类型,日期和时间,用户ID,系统调用,进程,使用的文件,SELinu...

6482
来自专栏散尽浮华

Gitlab上采用rpm方式快速安装的操作记录

之前梳理了一篇Gitlab的安装CI持续集成系统环境---部署Gitlab环境完整记录,但是这是bitnami一键安装的,版本比较老。下面介绍使用rpm包安装G...

2575
来自专栏快乐八哥

前后端分离下如何登录

目前大多数Web应用采用前后端分离方式进行开发。所以前端网站或应用都属于SPA(Single Page Application)。如果前端,后台API部署在同域...

1.7K2
来自专栏云计算教程系列

如何在Ubuntu 16.04上设置Node.js生产应用程序

Node.js是一个开源JavaScript运行时环境,用于轻松构建服务器端和网络应用程序。该平台可在Linux,OS X,FreeBSD和Windows上运行...

650
来自专栏Python中文社区

Linux进程监控工具Supervisor简易使用教程

專 欄 ❈ gw1770df,Python中文社区专栏作者,从事Python开发工作,全栈工程师。 博客: https://word.gw1770df.cc ...

3796
来自专栏电光石火

python3和python2共存

特别说明,本文是在Windows64位系统下进行的,32位系统请下载相应版本的安装包,安装方法类似。

2396
来自专栏linux系统运维

exportfs命令,NFS客户端问题,FTP介绍,使用vsftpd搭建ftp

/tmp/ 192.168.209.129/24(rw,sync,no_root_squash)

3673
来自专栏進无尽的文章

代码管理| 本地Git仓库和远程仓库的创建及关联

顺便说一下:Github账号创建私人项目的话需要付费,可以在码云上面创建个人私有仓库,是免费的。

2.5K2

扫码关注云+社区

领取腾讯云代金券