Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
Nginx官网:http://nginx.org/
前言
最近在树霉派上折腾nginx配置文件时, 因为错改了配置文件无法复原导致了程序无法使用。最后干脆卸载了nginx。最后重新安装的时候始终安装报错。但最终还是搞好了,苦于出坑前没有截图,但又怕以后最到同样问题没有相关的解决思路,所以还是根据回想记录一点心得备用吧。
卸载
使用Debian下的包管理工具apt来安装nginx
sudo apt-get remove nginx
在上面命令结束后执行,主要是卸载删除Nginx的不再被使用的依赖包
sudo apt-get autoremove
删除nginx的所有配置文件及文件夹
sudo rm -rf /etc/nginx
安装
同样使用Debian下的包管理工具apt来安装nginx
sudo apt update sudo apt-get install nginx
以上命令执行以后, 安装命令弄死就是不能正常执行完成,一直报错。后悔没有截个图呀@~!~~
好吧,我算是入坑了吧!
刨坑
既然有问题我们就解决吧,那就排查吧
首先:根据网络上的大神提示,查看nginx.service状态
systemctl status nginx.service
第2:怀疑是安装的时候有端口冲突,那查看呗
sudo netstat -nlp
第3:怀疑是卸载nginx的时候卸载不完成,继续使用命令卸载
–以下命令的意思是不保留配置文件卸载
sudo apt-get --purge remove nginx
第4:查看相关的依赖是不是都卸载了
dpkg --get-selections | grep nginx
这里有一些提示了,
libnginx-mod-http-auth-pam install
libnginx-mod-http-dav-ext install
libnginx-mod-http-echo install
libnginx-mod-http-geoip install
libnginx-mod-http-image-filter install
libnginx-mod-http-subs-filter install
libnginx-mod-http-upstream-fair install
libnginx-mod-http-xslt-filter install
libnginx-mod-mail install
libnginx-mod-stream install
nginx install
nginx-common install
nginx-full install
然后使用命令一个一个的卸载,
sudo apt-get --purge remove "包名"
出坑
最后经过反复的刨坑以后,再安装后就正常了。
sudo apt-get install nginx
查看版本号,执行nginx配置文件语法检测
nginx -v
nginx version: nginx/1.14.2
sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
分析
经过多次尝试以后,我发现的正确的卸载方式是
sudo apt-get remove nginx
# 命令以后,实际上只是 #卸载删除除了配置文件以外的所有文件。这一点也是网上大神诸多大神在入坑以后发现的。sudo apt-get purge nginx nginx-common
# 卸载所有东东,包括删除配置文件。所以这种方式是最彻底的。当然如果你需要保留相关配置文件除外。sudo apt-get autoremove
# 在上面命令结束后执行,主要是卸载删除Nginx的不再被使用的依赖包。sudo apt-get remove nginx-full nginx-common
#卸载删除两个主要的包。
相关的服务命令
- 查看nginx进程:
ps aux|grep nginx
- 启动Nginx服务
service nginx start
- 停止Nginx服务
service nginx stop
- 重启Nginx服务
service nginx stop
- Nginx服务的状态
service nginx stop
- 在Nginx服务启动的状态下,重新加载nginx.conf这个配置文件
service nginx stop