一、卸载
如果是使用yum安装:

yum remove nginx

如果已经不记得安装方式了,那么可以使用以下步骤进行全删除:

rm -rf /etc/nginx/
rm -rf /usr/sbin/nginx
rm /usr/share/man/man1/nginx.1.gz
apt-get remove nginx*

二、安装
首先找一个安静的文件夹,然后执行以下命令:(笔者通常都把这个安静的安装软件目录设置为/user/local/src目录)

1、 下载
wget http://nginx.org/download/nginx-1.9.9.tar.gz
# 解压
tar -xvf nginx-1.9.9.tar.gz
# 重命名(太长)
mv  nginx-1.9.9  nginx

2、配置、编译及安装

./configure
make
make install

源码编译的更多细节可以参考官方文档:http://nginx.org/en/docs/configure.html
三、启动
直接运行nginx可执行文件即可启动,nginx会自动读取配置文件目录下的“nginx.conf”配置文件,也可以在后面接“-c”参数来指定配置文件:

nginx -c /path/to/configfile

然后可以用 nginx -V 命令来查看配置目录和prefix目录,配置文件可以在编译时单独指定,也可以在启动时指定,如果没有指定配置文件,那么默认配置文件为prefix目录下的conf/nginx.conf。例如,prefix目录为“/usr/local/nginx”,没有指定配置文件,那么默认情况,nginx的配置文件是“/usr/local/conf/nginx.conf”。
yum或者apt-get软件包管理工具安装的,配置文件通常是/etc/nginx/nginx.conf。
由于nginx的配置文件比较复杂容易出错,修改配置后可以用“-t”参数来校验配置文件是否正确:
为了方便使用,配置临时环境变量(退出终端失效):
export PATH="${PATH}:/usr/local/nginx/sbin"

当然,也可以将上面的代码加到`~/.bashrc`文件中,执行souce,即可;还可以创建一个Nginx的软连接到/usr/local/sbin目录下;或者直接跳到Nginx的prefix目录下,使用.sbin/nginx;
nginx -t    # 校验默认的配置文件
nginx -t -c /path/to/configfile    # 校验指定配置文件
# 其他参数说明:
-T 参数除了校验配置文件外,还同时将完整的配置文件打印到标准输出(1.9.2以后版本支持)。
-g directives:设置全局指令,优先级高于配置文件。
-p prefix:制定prefix目录,默认是/usr/local/nginx。

四、停止和重载
当nginx启动后,可以使用“-s”参数向nginx管理进程发送信号来控制nginx:

其中,signal可以是以下值:
stop:快速关闭
quit:安全关闭
reload:重载配置文件
reopen:重新打开一个log文件,用于日志切割

quit信号通知nginx等待worker进程处理完当前的请求后退出,此命令只能由启动nginx的linux账户来执行。
reload信号通知nginx重新载入配置文件,除了实用reload外,nginx只会在启动时载入一次配置文件,之后对配置文件的修改不会对已经运行的nginx进程生效。当运行这个命令时,master进程会尝试读取配置文件,如果配置文件没有问题,master进程会启动新的worker进程来运行新的配置文件并处理请求,并且通知老的worker进程不再处理新的请求并在处理完当前任务后退出。如果配置文件存在问题不能执行,master进程会回退老配置文件继续工作,不会导致nginx进程整个异常退出。
linux的kill命令也可以达到相同的作用,我们假设nginx的master进程号(pid)是1234,那么 kill -s QUIT 1234 和 kill -s HUP 1234 这两条命令和前面quit、reload的作用相同。
master进程的pid保存在pid文件中,如果编译时没有指定,那么默认的pid文件位于prefix目录下logs文件夹中,即“prefix/logs/nginx.pid”。
五、错误
1、ngx_murmurhash.c:37:11: error: this statement may fall through [-Werror=implicit-fallthroug:
解决方案:

将对应/nginx/objs/Makefile中的 -Werrori 去掉, 在重新make即可;-Werrori是指GCC将所有的警告当成错误进行处理,所有导致错误输出,并不能进行下一步。

2、如果你想要配置一个https的server,你可能会碰到如下报错:

nginx: [emerg] unknown directive "ssl"

ssl指令识别不出来,是因为默认编译的时候没有加载OpenSSL的相关模块,解决方法如下:

./configure --with-http_ssl_module  // 重新config并指定其他模块http_ssl_module
make // 不要make install 那就覆盖了
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak // 先将原来的nginx备份想删除也可以
cp objs/nginx /usr/local/nginx/sbin/nginx // objs 目录中是编译后产生的文件
/usr/local/nginx/sbin/nginx -t // 在测试一下

参考:https://www.cnblogs.com/heioray/p/9260666.html

Linux下Nginx的卸载、安装以及基本使用相关推荐

  1. Linux下nginx完全卸载删除+安装以及环境配置

    Linux下nginx完全卸载删除 nginx卸载 其实很简单,只需要两步即可完成! 第一步:输入以下指令全局查找nginx相关的文件: find / -name nginx* 第二步:删除查找出来的 ...

  2. linux ssl证书卸载,linux下nginx怎么卸载ssl证书

    常见的情况下,Linux下nginx一般的ssl配置文件是这样的: server { listen 443; server_name example.com; root /apps/www; inde ...

  3. linux下Nginx的卸载、安装

    这里写目录标题 一.卸载nginx 一.ubuntu下卸载 二.centos下卸载 二.安装nginx 一.ubuntu安装(命令安装,文件位置不好找,优点是会自动注册进服务里,能用命令对nginx操 ...

  4. linux 下 nginx phpcgi 的安装及配置

    一,什么是nginx,它有什么优点  Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. N ...

  5. Linux下Nginx下载和安装

    linux下简单清晰安装Nginx. 一.首先安装编译工具及库文件 [root@localhost /]# yum -y install make zlib zlib-devel gcc-c++ li ...

  6. 第十章 Linux下RPM软件的安装与卸载

    第十章 Linux下RPM软件的安装与卸载 第一节 RPM软件包安装 rpm命名原则 如: vsftpd-3.0.2-9.el7.x86_64.rpm vsftpd 3.0.2 9 e17 x86_6 ...

  7. Linux下Nginx编译安装后的开机自启动设置

    Linux下Nginx编译安装后的开机自启动设置 一.查看当前Nginx启动状态 二.而配置Nginx相关服务文件 三 .设置nginx命令 四.设置开机启动 五.测试开机启动 一.查看当前Nginx ...

  8. Linux下Nginx编译安装过程详解

    Linux下Nginx编译安装过程详解 一.Nginx介绍 二.Nginx源码下载 1.打开Nginx官网 2.下载官网的源码包 三.Nginx源码安装 1.解压源码包 2.安装开发包组及环境 3.编 ...

  9. linux下使用nginx搭建集群,CentOS(linux) 下Nginx的安装(Nginx+Tomcat集群第一步)

    CentOS(linux) 下Nginx的安装(Nginx+Tomcat集群) CentOS 7.4(腾讯云) pcre库 zlib库 openssl Nginx服务器 安装gcc g++开发类库 y ...

最新文章

  1. 好用的netcat工具
  2. github推送错误:已经有此代码,不允许覆盖的解决方法
  3. Linux挂载命令mount详解
  4. ECCV 2020 论文大盘点—显著目标检测篇
  5. 如何使用Action.Invoke()触发一个Storyboard
  6. java ssm基于springboot的设备巡检系统
  7. PHP+Swoole 搭建 Websocket 聊天室
  8. 监听浏览器刷新事件,拦截浏览器返回,js监听移动端浏览器页面显示、隐藏
  9. 计算机 英语词汇 缩写,计算机相关的53个英语单词缩写
  10. java doc转换docx_使用Java将DOC文件转换为DOCX
  11. 基于小程序制作一个猜拳小游戏
  12. “四舍六入五成双规则” 与 C语言如何实现“四舍五入”
  13. win10微软图标点击无反应_win10的左下角的windows图标点击之后没反应,按下windows键也没有反应该如何做?...
  14. sql joins 的7种方式
  15. WebRTC Trickle ICE 策略
  16. Unity中一些小技巧
  17. 曾国藩经典人生哲理语录
  18. 安全创业者修炼手册:信息安全的江湖,是属于圈内人的
  19. hdu 3054 Fibonacci 找规律
  20. Phenix图文流程:使用docking解决Cryo-EM数据的结构问题

热门文章

  1. SQL Compliance Manager Crack
  2. VMware安装虚拟机
  3. display:flex的讲解
  4. 2020暑期数学建模(数据分析)学习笔记
  5. MySQL:由于找不到VCRUNTIME140_1.dll,无法继续执行代码。重新安装程序可能会解决此问题
  6. 彻底解决高版本 mac Kernel_task占CPU问题
  7. java springboot 商城系统源码
  8. android+仿ios画廊,安卓仿ios14主题app
  9. iphone 文件app连接服务器,最快速 iPhone 和 Windows 之间传输文件的方法,无需安装APP!...
  10. mysql日期时间类型