前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >CentOS7如何安装Nginx并配置自动启动

CentOS7如何安装Nginx并配置自动启动

原创
作者头像
郑郑SunUp
修改2025-01-08 13:14:30
修改2025-01-08 13:14:30
2470
举报
文章被收录于专栏:LinuxLinux

1.卸载nginx

1.查看nginx服务是否启动

代码语言:shell
复制
ps -ef | grep nginx

如上图所示,说明nginx没有启动

如上图所示,说明已经启动了nginx服务,需要关闭nginx服务

代码语言:txt
复制
kill 进程号ID

2.查看nginx相关的文件

代码语言:txt
复制
find / -name nginx

 3.删除有nginx相关的文件夹

代码语言:txt
复制
rm -rf  文件名

删除查找出来的全部文件夹

2.安装nginx

1.安装nginx所需要的环境,必须先安装好

代码语言:txt
复制
#安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境
yum install gcc-c++
#pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库
yum install -y pcre pcre-devel
#zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装
yum install -y zlib zlib-devel
#nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库
yum install -y openssl openssl-devel

2.安装nginx

方法一:在官网直接下载tar.gz安装包,然后通过远程工具拉取到 linux 里面【在 /usr/local 里面创建个nginx文件夹,拉进来。(也可以拉到其他地方)】

方法二:使用wget命令下载,确保系统已经安装了wget,如果没有安装,执行 yum install wget 安装。

3.确认/配置网络

如果执行 yum install wget发现不能正常安装,多数的情况下是没有连接到网络

修改网络配置文件

代码语言:txt
复制
cd /etc/sysconfig/network-scripts

 编辑网络配置文件

代码语言:txt
复制
vi ifcfg-ens33

 如果没有ifcfg-ens33就查看当前文件夹中的第一个文件(一般情况下是这样的)

将ONBOOT="no"改为ONBOOT="yes"

配置完成后 重启网络服务 service network restart

查看网络是否可以正常连接

代码语言:txt
复制
ping www.baidu.com

出现了图中的情况说明可以正常连接网络,使用wget进行安装

通过 wget 下载 nginx 安装包

代码语言:txt
复制
 #进入usr下的local目录
cd usr/local

nginx被解压到了/usr/local/nginx-1.22.1 目录下(不要把压缩包解压到/usr/local/nginx目录下, 或者将解压后的目录重命名为nginx,因为nginx会默认安装到/usr/local/nginx目录下), 切换到nginx-1.22.1/目录

代码语言:txt
复制
 wget https://nginx.org/download/nginx-1.22.1.tar.gz

解压安装包

代码语言:txt
复制
tar -zxvf nginx-1.22.1.tar.gz

 进入解压后的文件目录

代码语言:txt
复制
cd nginx-1.22.1

配置(带有https模块)【需要进入解压后的目录】 

代码语言:txt
复制
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --with-stream_ssl_module

编译和安装【需要进入解压后的目录】

代码语言:txt
复制
#编译
make
#安装
make install

启动、关闭 nginx 服务

代码语言:txt
复制
###启动服务
#需要先进入sbin目录下
cd /usr/local/nginx/sbin
#启动nginx服务
./nginx
 
###关闭服务
#需要先进入sbin目录下
cd /usr/local/nginx/sbin
#关闭nginx服务
./nginx -s stop

 为了方便后续快速启动nginx,可以给nginx配置环境变量

代码语言:txt
复制
vim /etc/profile

在最后一行添加

代码语言:txt
复制
export PATH=$PATH:/usr/local/nginx/sbin

/usr/local/nginx/sbin为nginx服务所在的路径

让配置文件生效

代码语言:txt
复制
source /etc/profile

直接输入nginx启动服务

代码语言:txt
复制
#查看是否运行
netstat -ntlp

说明启动成功

在浏览器中输入 http://服务器ip/ 看是否能够访问

出现如下界面说明安装成功

3、配置nginx开机启动

切换到/lib/systemd/system/目录,创建nginx.service文件vim nginx.service

代码语言:txt
复制
cd /lib/systemd/system/
vim nginx.service

文件内容如下:

代码语言:txt
复制
[Unit]
Description=nginx - web server
After=network.targt
 
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

修改完脚本后执行命令:

代码语言:txt
复制
systemctl daemon-reload
systemctl start nginx.service
systemctl stop nginx.service
systemctl status nginx.service

执行成功后查看运行状态:

最后设置开机自启:

代码语言:txt
复制
systemctl enable nginx.service

#############################
systemctl 使用技巧
启动服务:systemctl start vsftpd.service

关闭服务:systemctl stop vsftpd.service

重启服务:systemctl restart vsftpd.service

显示服务的状态:systemctl status vsftpd.service

在开机时启用服务:systemctl enable vsftpd.service

在开机时禁用服务:systemctl disable vsftpd.service

查看服务是否开机启动:systemctl is-enabled vsftpd.service

查看已启动的服务列表:systemctl list-unit-files|grep enabled

查看启动失败的服务列表:systemctl --failed

重启机器

代码语言:txt
复制
reboot

其他

检查nginx配置文件正否正确

代码语言:txt
复制
nginx -t -c /etc/nginx/nginx.conf

重新以这种方式加载nginx.conf

代码语言:txt
复制
./nginx -c /usr/local/nginx/conf/nginx.conf

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.卸载nginx
    • 1.查看nginx服务是否启动
    • 2.查看nginx相关的文件
    •  3.删除有nginx相关的文件夹
  • 2.安装nginx
    • 1.安装nginx所需要的环境,必须先安装好
    • 2.安装nginx
    • 3.确认/配置网络
  • 3、配置nginx开机启动
  • 其他
    • 检查nginx配置文件正否正确
    • 重新以这种方式加载nginx.conf
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档