前期准备
VMware和CentOS7 安装VMware虚拟机,在VMware中安装CentOS7操作系统,我这边只提供Vmware和CentOS7的下载地址,网上有很多教程,一步一步跟着安装就行。 VMware下载地址(下载Windows版本的就行):https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html CentOS7镜像下载地址:http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/ 下载这个 两者都下载完后,搜索VMware安装CentOS7安装教程跟着安装就行。
Xshell和Xftp 还需要安装Xshell和Xftp两个软件,Xshell是为了更加方便地操作我们的虚拟机,Xftp是为了更加方便地操作虚拟机中的文件。 下载地址:https://www.xshell.com/zh/free-for-home-school/ 填入姓名和邮箱就可以免费获取了
下载Nginx
Nginx下载地址:http://nginx.org/en/download.html 下载后是tar.gz类型的压缩包,需要在虚拟机中来解压
安装Nginx
使用Xshell连接我们的虚拟机 使用Xftp将下载好的压缩包移动到根目录 ls 查看一下 解压压缩包 tar zxvf nginx-1.21.6.tar.gz 进入nginx目录 cd nginx-1.21.6/ 在/usr/local/nginx 目录下安装Nginx ./configure --prefix=/usr/local/nginx 发现报错,是缺少C编译器依赖导致的 安装gcc yum install -y gcc 再次安装Nginx ./configure --prefix=/usr/local/nginx 发现还是缺少两个依赖,安装这两个依赖 yum install -y pcre pcre-devel yum install -y zlib zlib-devel 安装好后再次安装Nginx,如下图 ./configure --prefix=/usr/local/nginx 使用make 命令来编译源程序 最后运行make install ,成功安装 此时就安装好Nginx了,它所在的目录是/usr/local/nginx
启动Nginx
进入/usr/local/nginx/sbin 目录 启动nginx./nginx 浏览器中输入当前虚拟机的ip地址,发现无法访问,这是防火墙的问题 关闭防火墙systemctl stop firewalld.service ,再次访问,发现可以正常访问nginx了 一些其他的nginx和防火墙命令:
启动:./nginx
快速停止:./nginx -s stop
优雅关闭:./nginx -s quit(关闭前完成已经接受的连接请求)
重新加载配置:./nginx -s reload
禁止防火墙开机启动:systemctl disable firewalld.service
安装nginx为系统服务脚本
创建脚本文件vim /usr/lib/systemd/nginx.service 将以下内容复制进去(记着先按一下i键来开启编辑模式)
[Unit]
Description=nginx
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 # 多用户
:wq 保存退出 重新加载一下系统服务systemctl daemon-reload 因为之前我们已经启动了nginx了,查询一下之前启动的nginx服务ps -ef | grep nginx 停止nginx服务./nginx -s stop 重新查询之前启动的nginx服务ps -ef | grep nginx ,发现已经没有了,这时我们就可以使用系统脚本来启动nginx了 使用系统脚本来启动nginx systemctl start nginx.service 使用系统脚本查询nginx状态 systemctl status nginx.service 可以看到状态为active(running),说明已经正常启动
设置nginx服务为开机启动 systemctl enable nginx.service 重新在浏览器中访问nginx服务器,可以正常访问 其他系统脚本命令
启动nginx:systemctl start nginx.service
查询nginx状态:systemctl status nginx.service
重新加载nginx:systemctl reload nginx.service
停止nginx:systemctl stop nginx.service
设置nginx服务为开机启动:systemctl enable nginx.service
|