linux中Nginx安装

编译安装

​ Nginx的优点太多,这里不再赘述,详情请看这篇博客深入理解nginx

​ Nginx的安装有rpm包安装、编译安装和docker安装。本文将介绍编译安装方式。

1. 安装环境准备

1.0 更新yum

yum -y update

1.1 安装GCC编译器:

(用于编译c、c++代码)

yum install -y gcc

1.2 安装G plus plus编译器

yum install -y g++

1.3 安装PCRE库(用来解析正则表达式)

(用c语言编写的正则表达式函数库))

yum install -y pcre pcre-devel

1.4 安装zlib库

(用于数据压缩的函式库))

yum install -y zlib zlib-devel

1.5 安装openssl库

(安全套接字层密码库))

yum install -y openssl openssl-devel

2. 下载安装

2.1 下载nginx

wget http://nginx.org/download/nginx-1.15.12.tar.gz

2.2 编译nginx

tar -zxvf nginx-1.15.12.tar.gz
cd nginx-1.15.12/
./configure
make
make install

2.3 查看安装位置

whereis nginx

2.4 启动nginx

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

3.nginx操作

修改配置后重新加载生效
/usr/local/nginx/sbin/nginx -s reload
开启nginx
/usr/local/nginx/sbin/nginx
快速停止nginx
/usr/local/nginx/sbin/nginx -s stop
完整有序的停止nginx
/usr/local/nginx/sbin/nginx -s quit

: stop和quit的区别在于

quit是一个优雅的关闭方式,Nginx在退出前完成已经接受的连接请求

Stop 是快速关闭,不管有没有正在处理的请求。

4. nginx加入systemctl服务

nginx安装完成后不能被系统管理,而且开机不能自启,这里设置nginx开机自启。

为了方便,现将nginx服务添加至systemctl

4.1 关闭nginx服务

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

4.2 更改nginx.conf

#pid        logs/nginx.pid;
更改为
pid logs/nginx.pid;

注意:

  • 这个参数为nginx运行时的pid号,这个配置为将pid号存入nginx.pid文件中,接下来的配置需要用到这个参数,所以取消注释。

  • 注意要保持此处和下面的配置路径时相同的。

  • 此处的路径时相对路径

4.2 配置服务

在/usr/lib/systemd/system/新建nginx.service文件,vim编辑如下

vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true [Install]
WantedBy=multi-user.target

注意:

[Unit]部分主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别

[Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里Type=forking是后台运行的形式,PIDFile为存放PID的文件路径ExecStart为服务的具体运行命令ExecReload为重启命令ExecStop为停止命令,PrivateTmp=True表示给服务分配独立的临时空间,注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错

[Install]部分是服务安装的相关设置,可设置为多用户的

服务脚本按照上面编写完成后,以754的权限保存在/usr/lib/systemd/system目录下

然后执行。

注意修改或新增文件需要执行以下语句才能生效

systemctl daemon-reload
  • PIDFile这个参数很重要,要保持nginx.conf和nginx.service路径相同,注意此处的PIDFile为绝对路径。

4.3 启动、关闭、重启nginx

开启:

systemctl start nginx.service

关闭:

systemctl stop nginx.service

重新加载

systemctl reload nginx.service

优雅退出:

systemctl quit nginx.service

开机自启:

systemctl enable nginx.service

查看状态:

systemctl status nginx.service

注意:

上述配置,如果出现下面问题,请仔细查看教程,检查nginx.service和nginx.conf两个PID文件的路径是否对照。

linux中Nginx安装的更多相关文章

  1. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  2. Linux中Nginx安装部署

    前言 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sys ...

  3. Linux中Nginx安装教程

    Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性: 在连接高并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的 ...

  4. Linux中Nginx安装与配置详解 test(待整理 补全)

    http://www.linuxidc.com/Linux/2016-08/134110.htm http://www.cnblogs.com/freeweb/p/5425554.html http: ...

  5. linux环境中,nginx安装过程

    需求描述: 记录在linux平台,nginx安装的过程. 环境描述: 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 操作内核版 ...

  6. linux中nginx、mysql安装碰到的问题

    服务器到期新买了一台服务器,记录一下重新安装基本环境碰到了一些问题 安装nginx 1. 启动失败 403 forbidden nginx 解决方案:(个人使用直接用了root账号,修改对应nginx ...

  7. VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三)

    首先启动Nginx 1. 相关浏览 两个 Tomcat 配置:  VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二) Nginx 安装配置启动: VMware Linu ...

  8. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  9. Linux中redis安装配置及使用详解

    Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...

随机推荐

  1. Java新特性 5、6、7、8、9、10、11、12、13

    文章转载于:https://www.cnblogs.com/hepengju/p/11595102.html 项目地址:https://github.com/hepengju/java-new-fea ...

  2. CSAPP:代码优化【矩阵读写】

    转载请注明出处:https://www.cnblogs.com/ustca/p/11790314.html 写程序最主要的目标就是使它在所有可能的情况下都正确工作,另一方面,在很多情况下,让程序运行得 ...

  3. Go-back-N Implementation of reliable data transport (RDT)

    [Author] @ Yubao Liu Tables 1.Overview 2.Design explanation 2.1Implemented Routines 2.2Called Routin ...

  4. Unity3d粒子特效:制作火焰效果

    效果 分析 真实的火焰效果,通常包括:火.火光.火星等组成部分,而火焰对周围环境的烘焙,可以通过灯光实现,如点光源. 针对火焰组成部分,我们可以创建对应的粒子系统组件,实现相应的效果,如下图所示: 1 ...

  5. iOS开发高级分享 - iOS上的设备标识符和指纹

    苹果认可的标识符 Apple提供了各种API,以方便用户识别各种用途: 通用标识符(UDID) 在iOS的早期,苹果公司提供了一个uniqueIdentifier财产上UIDevice-亲切地称为ud ...

  6. 调试webpack

    调试webpack 1. 摘要 用过构建工具webpack的朋友应该都体会,面对其几百行的配置内容如大海一小舟,找不到边.看文档查百度,对其构建的生命周期看了又看.最终还是很茫然.原因很简单,构建配置 ...

  7. 解决靶机Bee-Box 键盘乱序问题

    Bee-Box介绍 Bee-box官方称呼BWAPP,buggy web Application 这是一个集成了各种常见漏洞和最新漏洞的开源Web应用程序,目的是帮助网络安全爱好者.开发人员和学生发现 ...

  8. [考试反思]0825NOIP模拟测试30:没落

    AB卷,15人. Lrefrain rank#1 179 skyh rank#2 122 116 108 54 42虽说还是不怎么样,但是有好转的迹象. 开卷审题,T1是个(假)期望,感觉也许还可做. ...

  9. [考试反思]0815NOIP模拟测试22

    40分,15名. 1-4:120 75 70 70 35分20名...总之差距极小不想说了 昨天教练说:以后的考试还是联赛知识点,但是难度比联赛高. 没听进去,以为是对于所有人而言的,也就是T1难度变 ...

  10. AndroidOS体系结构

    首先上图一张 对照着图,我们再来看Android 系统的体系结构就爽多了.我们从底层向上进行分析. 一.Linux 内核层 Linux Kernel 基于linux2.6.其核心系统服务如安全性.内存 ...