nginx的安装和卸载(代码片段)

永不止步 永不止步     2023-04-15     804

关键词:

一.安装(centos)

1,安装一些依赖包,因为nginx是通过C语言来写成的:

yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

2,下载Nginx安装包

yum install wget &&
wget https://nginx.org/download/nginx-1.16.1.tar.gz

3,解压缩包

tar -zxvf nginx-1.16.1.tar.gz    nginx

4,将文件移到/usr/local/目录下

mv  nginx  /usr/local/

5,配置编译环境

先进入到nginx目录中
cd  /usr/local/nginx/

找到有一个configure的可执行文件
./configure

6.编译安装

make &&  make install 

7.看下目录结构

tree  nginx

 

 

 备注:

备注:

上述我们用到的一个指令 tree,该指令可以将我们指定的目录以树状结构展示出来。如果没有这个指令,可以通过以下指令进行安装。

yum install tree

重点目录和文件如下:

目录/文件 说明 备注
conf   配置文件的存放目录
conf/nginx.conf  Nginx的核心配置文件 conf下有很多nginx的配置文件,我们主要操作这个核心配置文件
html  存放静态资源(html, css, ) 部署到Nginx的静态资源都可以放在html目录中
logs  存放nginx日志(访问日志、错误日志等)
sbin/nginx   二进制文件,用于启动、停止Nginx服务
————————————————

至此Nginx就已经安装完毕。

二.常用命令

Nginx中,我们的二进制可执行文件(nginx)存放在sbin目录下,虽然只有一个可执行文件,但是我们可以通过该指令配合不同的参数达到更加强大的功能。接下来,我们就演示一下Nginx常见指令, 在执行下面的指令时,都需要在/usr/local/nginx/sbin/目录下执行。

1.看版本

./nginx   -v

2.检查配置文件 

修改了nginx.conf核心配置文件之后,在启动Nginx服务之前,可以先检查一下conf/nginx.conf文件配置的是否有错误,命令如下:

./nginx  -t

3.启动

./nginx

启动之后,我们可以通过ps -ef指令来查看nginx的进程是否存在。  

注意: nginx服务启动后,默认就会有两个进程。

注意:

要想正常访问Nginx,需要关闭防火墙或开放指定端口号,执行的指令如下:

A. 关闭防火墙

systemctl stop firewalld

B. 开放80端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload

 

4.停止

./nginx -s  stop

再次看下进程: ps aux|grep  nginx

 

5.重新加载

当修改了Nginx配置文件后,需要重新加载才能生效,可以使用下面命令重新加载配置文件:

 

./nginx -s  reload

 

设置环境变量

 

 

在上述我们在使用nginx命令在进行服务的启动、停止、重新加载时,都需要用到一个指令nginx,而这个指令是在nginx/sbin目录下的,我们每一次使用这个指令都需要切换到sbin目录才可以,使用相对繁琐。那么我们能不能在任意目录下都可以执行该指令来操作nginx呢?答案是可以的,配置nginx的环境变量即可。

 

通过vim编辑器,打开/etc/profile文件, 在PATH环境变量中增加nginx的sbin目录,如下:

 

 

 修改完配置文件之后,需要执行 source /etc/profile 使文件生效。 接下来,我们就可以在任意目录下执行nginx的指令了,如:

 

 

 

 

三.通过systemctl方法来启动nginx(可以设置开机自启动)

首先我们需要了解下centos系统中的systemd的unit文件配置。

参考: https://www.cnblogs.com/linuxprobe/p/15690895.html

 

然后,通过自己创建一个nginx.service来实现通过systemctl命令启动nginx。

1.创建nginx.service

cd   /lib/systemd/system/
touch nginx.service
vim nginx.service

2.配置unit文件

 

[Unit]
Description=nginx
After=network.target
 
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStartpre=/usr/local/nginx/sbin/nginx -c  t  /usr/local/nginx/conf/nginx.conf
ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true 
[Install]
WantedBy
=multi-user.target

 

[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStartpre是检查配置文件 ExecStart为服务的具体运行命令 ExecReload为重启命令 ExecStop为停止命令 PrivateTmp
=True表示给服务分配独立的临时空间 注意:[Service]的启动、重启、停止命令全部要求使用绝对路径 [Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

3.重新加载配置文件

 

systemctl daemon-reload

4.nginx服务常用操作

#查看nginx服务状态
systemctl status nginx.service
#启动nginx服务
systemctl start nginx.service
#停止nginx服务
systemctl stop nginx.service
#重启nginx服务
systemctl restart nginx.service
#重新读取nginx配置(这个最常用, 不用停止nginx服务就能使修改的配置生效)
systemctl reload nginx.service

5.可设置开机自启动

加入开机自启动

 

# systemctl enable nginx

 

如果不想开机自启动了,可以使用下面的命令取消开机自启动

# systemctl disable nginx

 

四.卸载nginx

1,先看下nginx是否在运行中

ps  aux|grep nginx

2,如果在运行中,则停止

nginx -s stop 或者直接杀死进程  pkill  nginx或  kill -9  进程号

3,找到所有nginx有关文件

find  / -name nginx

4,删除有关nginx的文件(linux中一切都文件)

命令1:rm -rf file /usr/local/nginx*
命令2:find / -name nginx*

5,卸载nginx的有关依赖

yum  remove  nginx

 

linux下卸载删除nginx(代码片段)

nginx卸载两步完成。全局查找nginx相关文件find/-namenginx*删除查找出来相关nginx的文件rm-rffile此处跟查找出来的nginx文件 将查找出来的nginx相关文件删除干净后就可以重新安装nginx了。 查看详情

linux宝塔的安装和卸载步骤(代码片段)

Linux宝塔的安装和卸载步骤一、[安装宝塔](https://www.bt.cn/bbs/thread-19376-1-1.html)二、卸载宝塔2.1下载宝塔的卸载文件2.2运行此文件根据提示卸载一、安装宝塔Centos安装命令:yuminstall-ywget&&wget-Oinstall.shhttp://download.bt.cn/install/... 查看详情

源码编译三部曲(以nginx示例)(代码片段)

...rpm包与源码包区别源码编译三部曲预编译./configure编译make安装makeinstall启动nginx怎么卸载源码安装的软件nginx优化直接使用nginx二进制程序控制nginx全局使用nginx命令控制nginx使用systemctl命令来控制nginx什么是源码编译源代码是相对... 查看详情

安装和卸载django(代码片段)

在dos命令行中输入pip如下命令进行安装:pipinstalldjango安装指定版本的Django命令如下:pipinstalldjango==1.8.19卸载指令:pipuninstalldjango 查看详情

centos7下yum安装配置nginx与php(代码片段)

实现LNMP环境搭建。开始安装Nginx和PHP-FPM之前,首先卸载系统中以前安装的Apache和PHP保证安装不会冲突。用root登录输入下面的命令:yumremvehttpd*php*增加额外资源库  默认情况下,CentOS的官方资源是没有php-fpm的,但我们可以... 查看详情

nginx之轨迹从零开始nginx基础(超详细)(代码片段)

——目录——0.Nginx的原理1.安装Nginx安装前的准备方式一:源码简单安装方式二:yum安装卸载Nginx2.Nginx服务器的开启和停止方式一:Nginx服务信号控制方式二:Nginx命令行控制3.平滑升级Nginx4.配置文件(nginx.conf&... 查看详情

应用安装和卸载(代码片段)

应用安装和卸载定义广播接收者用来接收事件(应用安装和卸载的事件)publicclassMyReceiverextendsBroadcastReceiverprivatestaticfinalStringTAG="MyReceiver";@OverridepublicvoidonReceive(Contextcontext,Intentintent)Stringaction=intent.getAction();if(action.equals("android.intent.... 查看详情

textwindows服务安装和卸载命令(代码片段)

查看详情

centos环境下常用软件安装(代码片段)

centos环境下常用软件安装1虚拟机yum基础安装2.nginx安装2.1将安装包下载到服务其上(我这里上传的是nginx-1.8.0.tar.gz)2.2解压2.3安装nginx依赖的软件2.4配置安装路径2.5开始编译并安装nginx2.6开启nginx2.7nginx一些命令2.8访问nginx3.mysql安装3.1... 查看详情

helm2和helm3的安装卸载常用命令(代码片段)

文章目录Helm2和Helm3的安装与卸载关于Helm从Helm2到Helm3**Helm2****Helm2**的问题**Helm3**Helm2卸载Helm2的安装部署客户端部署tillerHelm2常用命令helmlint**Helm2**到Helm3的迁移Helm3安装二进制安装配置repohelm3命令使用总结记录信息命令查看环境信... 查看详情

ubuntu安装和卸载软件包—笔记3(代码片段)

1.Ubuntu通过编译源码的方式安装包源码的安装方式一般都是:tar-zxvfgdal-3.5.1.tar.gz #解压cdsource-code-root-dir #定位源码路径./config #构建makefile文件。也可以通过指定安装目录的方式./configure--prefix='/home/Softwares/proj'ÿ 查看详情

ubuntu中node和npm的卸载与安装(代码片段)

node&npm的删除步骤#apt-get卸载sudoapt-getremove--purgenpmsudoapt-getremove--purgenodejssudoapt-getremove--purgenodejs-legacysudoapt-getautoremove#手动删除npm相关目录rm-r/usr/local/bin/npmrm-r/usr/local/bin/noder 查看详情

中标麒麟卸载安装yum和python(代码片段)

中标麒麟卸载安装yum和python卸载Python强制删除已安装Python及其关联删除所有残余文件验证删除,返回无结果表示卸载干净了同理卸载yum下载软件安装卸载Python强制删除已安装Python及其关联[root@Charlie~]#rpm-qa|greppython|xargsrpm-ev... 查看详情

软件仓库的配置及应用程序的管理和应用软件安装/卸载(代码片段)

软件仓库的配置及应用程序的管理和应用软件安装/卸载一、配置软件仓库1.yum简介基于rpm软件包的安装部署机制自动解决软件包的依赖关系需要先配置软件仓库2.配置本地的软件仓库a.放入centos7.iso镜像文件到光驱中,确保电源开... 查看详情

nginx安装目录和编译参数(代码片段)

安装目录详解查看安装nginx之后总共生成了哪些文件rpm-qlnginx在上面的文件中包括配置文件和日志文件/etc/logrotate.d/nginx类型:配置文件作用:Nginx日志轮转,用于logrotate服务的日志切割(比如按天切割日志)/etc/nginx/etc/nginx/nginx.co... 查看详情

mac下彻底卸载node和npm(代码片段)

...的管理,还是很方便的,各个版本切换自由切换,但是nvm安装的node是在~/.nvm下的,和之前安装的不在一起,有点儿强迫症的我,就想把之前的给卸载了homebrew安装的直接一条命令 brewuninstallnode官网下载pkg安装包的一条命令&nbs... 查看详情

linux下javaweb服务器的搭建三(nginx)(代码片段)

目录1、nginx介绍2、nginx的下载3、nginx的安装3.0 nginx的卸载3.1 基于APT源安装3.2 编译源码安装3.2.1安装依赖包3.2.2解压nginxtar包3.2.3 nginx文件夹改名并进入到该目录3.2.4configure脚本自动生成Makefile脚本3.2.5编译nginx3.2.6安装nginx3.3 ubunt... 查看详情

linux发行版centos下docker的安装和卸载(代码片段)

目录1、Docker的安装2、Docker的卸载linux中安装docker的方式有几种,本文是基于docker仓库的安装前置须知:本文的服务器并非虚拟出来的服务器,而是在阿里云ESC上进行的下述操作,其中步骤1.2用到的docker镜像加速也... 查看详情