关于 NGINX 的二三事
@ MEROCO · Sunday, Oct 16, 2016 · 2 分钟阅读 · 更新于 Oct 16, 2016

NGINX 简介

{% ruby Nginx|engine x %} 是一个网页服务器,它能反向代理 HTTP, HTTPS, SMTP, POP3, IMAP 的协议链接,以及一个负载均衡器和一个 HTTP 缓存。 起初是供俄国大型的门户网站及搜索引擎 {% ruby Rambler|Рамблер %} 使用。此软件 BSD-like 协议下发行,可以在 UNIXGNU/LinuxBSDMac OS XSolaris,以及 Microsoft Windows 等操作系统中运行。

以上是维基百科对 Nginx 的描述。


编译安装

编译安装区别于 yum 安装,最大的优点就是能随心所欲,缺点是过程略微复杂。

环境和目标

安装编译工具和依赖包

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

如果报错搜索错误代码解决。

新建匿名用户和用户组

$ sudo groupadd -r nginx
$ sudo useradd -s /sbin/nologin -g nginx -r nginx

下载源码

$ cd /root
$ wget http://nginx.org/download/nginx-1.11.1.tar.gz
$ wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz

建议去官网查看下载当前最新的稳定版本。下载新版 OpenSSL 的目的是为了支持 HTTP/2

解压并编译安装

解压文件

$ tar -zxcf nginx-1.11.1.tar.gz
$ mv openssl-1.0.2h.tar.gz /root/nginx-1.11.1
$ cd /root/nginx-1.11.1
$ tar -zxcf openssl-1.0.2h.tar.gz

配置编译参数

./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --with-openssl=openssl-1.0.2h

这是笔者的编译参数,可以通过命令 ./configure --help 查看全部参数说明,然后根据需要选择。

编译安装

$ make && make install

如果一切顺利很快就能完成安装。


常用命令

启动

$ cd /usr/local/nginx/sbin
$ ./nginx

重启

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

配置文件校验

$ cd /usr/local/nginx/sbin
$ ./nginx -t

关闭

查询主进程号

$ ps -ef | grep nginx

从容停止

$ kill -QUIT 主进程号

快速停止

$ kill -TERM 主进程号

强制停止

$ kill -9 nginx

PID 停止

$ kill -信号类型 ‘/usr/local/nginx/logs/nginx.pid’

解决 PID 丢失

$ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

版本信息

$ cd /usr/local/nginx/sbin
$ ./nginx -V

升级

同安装基本类似,下载、解压、编译、升级。

$ make upgrade

配置文件参数

nginx.conf 文件的配置参数。以笔者的配置参数作为参考,主要做了 HTTP 强制跳转 HTTPS 并开启了 HTTP/2 两个功能。

server {
        listen 80;
        listen [::]:80;

        return 301 https://$host$request_uri;
    }
server
    {
        listen  443 ssl http2;
        listen [::]:443 ssl http2;
        server_name misuzu.moe www.misuzu.moe blog.misuzu.moe;
        index index.html index.htm index.php;
        root  /home/www/blog;
        
        ssl_certificate /home/www/ssl/misuzu.crt;
        ssl_certificate_key /home/www/ssl/misuzu.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_session_cache shared:SSL:20m;
        ssl_session_timeout 60m;
    }

结语

好记性不如烂笔头。

个人笔记。

友链

headphone_sket-dance.jpg

申请原则

留言就好啦,不作死的博客都很欢迎。

左邻右舍

关于

about.jpg

  • 昵称:meroco/傲娇呆毛
  • 生日:1993/07/29
  • 标签:绘画、摄影、唱片收藏、日麻新手、公主连结玩家、前宝可梦训练师、鬼泣4核心玩家、黑暗之魂1核心玩家、菅野洋子应援、渡边信一郎粉丝、库布里克影迷…
  • 个人信息页:meroco.me
  • 曾制作虾米动漫音乐周刊,现制作组集体摸鱼中…

设备

  • 数码相机:Olympus OM-D EM10II, Olympus M.Zuiko Digital 17mm F1.8, Olympus M.Zuiko Digital 75mm F1.8
  • 胶片相机:
  • 135画幅:Rollei 35S Silver Oak Leaf Limited Edition, Nikon F, Nikon FM2, Olympus Pen F, Olympus XA, Konica Tomato, Pentax MX
  • F卡口尼克尔镜头:Nikkor 20mm F3.5 AI-S, Nikkor 28mm F2.8 AI-S, Nikkor 50mm F1.4 AI-S
  • Pen F瑞光镜头:E.Zuiko Auto-W 25mm F4, F.Zuiko Auto-S 38mm F1.8, E.zuiko Auto-S 38mm F2.8(Pancake)
  • 120画幅:Rolleiflex 3.5F, Rolleicord Vb
  • 测光表:Sekonic L-308S
  • 扫描仪:Epson Perfection V550 Photo
  • 耳机:Sennheiser HD600, Final Audio E1000
  • CD机:Pioneer PD-T04S
  • 耳放:Niuniu Audio AMP Designed for Grado
  • DAP:Apple iPod Classic 3
  • 录音笔:ZOOM H1
  • 光驱:Pioneer BDR-XU03C, Pioneer DVR-XU01C

以上均为当前持有。