Nginx 安装与部署

简介: Nginx 安装与部署

文章和代码已经归档至【Github仓库:https://github.com/timerring/front-end-tutorial 】或者公众号【AIShareLab】回复 nginx 也可获取。

虚拟机:VMware workstation 16
操作系统:CentOS 7.4
下载地址:https://vault.centos.org/centos/7.4.1708/isos/x86_64/CentOS-7-x86_64-Minimal-1708.iso

建议电脑配置:

  • 内存:建议8G以上
  • 磁盘:建议使用SSD
  • CPU:4核以上主流即可

虚拟机安装CentOS7.4

1 新建虚拟机

2 典型安装

3 选择CentOS镜像

4 存储位置

5 虚拟机磁盘配置 :注意这里只是分配最大磁盘大小,实际不会在一开始占用那么多,是一个动态的区域,在实际实用中逐渐分配。

6 自定义其他配置:默认即可。

7 安装系统

默认即可,在分区选择时记得点进去确认一下。

接下来继续安装,安装过程中可以设置root密码。安装后重启即可。

Linux配置

配置上网

修改配置网卡配置文件(Linux中所有设置都是通过修改配置文件实现的)

vi /etc/sysconfig/network-scripts/ifcfg-ens33

ONBOOT 修改为yes即可,即重启操作系统时就会重启该网卡。

然后重启网络服务

systemctl restart network

重新测试ping可发现,网络正常。

可以用 ip addr 测试当前ip地址。

通常,为了便于连接服务器以及复制粘贴等功能,一般采用XShell作为终端。下载地址:https://www.xshell.com/zh/free-for-home-school/

配置静态ip

之前的网络配置是使用dhcp方式分配ip地址,这种方式会在系统每次联网的时候分配一个ip给我们用,系统下次启动的时候ip会变,不方便管理。

配置静态ip首先需要打开网卡配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改启动协议 BOOTPROTO=static

手动配置ip地址

IPADDR=192.168.44.101
NETMASK=255.255.255.0
GATEWAY=192.168.44.1
DNS1=8.8.8.8

一些常见的公网DNS服务器:

阿里

223.5.5.5
223.6.6.6

腾讯

119.29.29.29
182.254.118.118

百度

180.76.76.76

114DNS

114.114.114.114
114.114.115.115

谷歌

8.8.8.8
8.8.4.4

注意,这里是严格区分大小写的。

样例:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=10ac735e-0b8f-4b19-9747-ff28b58a1547
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.44.101
NETMASK=255.255.255.0
GATEWAY=192.168.44.1
DNS1=8.8.8.8

然后重启网络服务即可。

systemctl restart network

这里第一次配置时,网络仍然无法连接,这里我修改了网关与虚拟机的网关保持一致。

虚拟机网关查看方法:

编辑---> 虚拟网络编辑器--->选择VMnet8--->NAT设置--->网关IP

然后把上述GATEWAY修改为你的网关IP即可。然后就可以ping通了,仅供参考。

Nginx的安装

版本区别

常用版本分为四大阵营

Nginx开源版:非常纯粹的反向代理,负载均衡。
http://nginx.org/

Nginx plus 商业版
https://www.nginx.com

openresty:以Lua脚本扩展的nginx
http://openresty.org/cn/

Tengine:以C语言扩展的nginx
http://tengine.taobao.org/

备份克隆

在安装前,最好先克隆备份,以防安装错误后难以恢复。

首先可以通过 init 0 关闭虚拟机。

然后右键虚拟机,选择 管理--->克隆,选择创建连接克隆,这种克隆方法可以比较出两者之间的差异。

安装

编译安装

首先传输nginx安装包,然后 tar zxvf nginx-1.21.6.tar.gz, 进入解压后的文件夹,执行 ./configure 安装,由于缺少相关的依赖,因此会报错。只需要根据对应的报错安装即可。

./configure --prefix=/usr/local/nginx #设置前缀,安装到指定的目录下
make
make install

报错解决

提示

checking for OS

Linux 3.10.0-693.el7.x86_64 x86_64
checking for C compiler ... not found
./configure: error: C compiler cc is not found

安装gcc

yum install -y gcc

提示

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.

安装perl库

yum install -y pcre pcre-devel

提示:

./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.

安装zlib库

yum install -y zlib zlib-devel

启动Nginx

手动启动的方式,进入安装好的目录/usr/local/nginx/sbin

./nginx 启动
./nginx -s stop 快速停止
./nginx -s quit 在退出前完成已经接受的连接请求
./nginx -s reload 重新加载配置

防火墙

关闭防火墙

systemctl stop firewalld.service

禁止防火墙开机启动

systemctl disable firewalld.service

放行端口

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

重启防火墙

firewall-cmd --reload

关闭防火墙后启动服务,可以通过浏览器访问ip验证服务是否启动。若成功则如下所示:

安装成系统服务

每次手动启动服务过于复杂,可以考虑安装成系统级的服务。

创建服务脚本

vi /usr/lib/systemd/system/nginx.service

服务脚本内容

[Unit]
Description=nginx - web server
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

重新加载系统服务

systemctl daemon-reload

启动服务

systemctl start nginx.service

查看服务状态(是否启动)

systemctl status nginx.service

image-20230301195431814

可以看到,服务是已经active的。

开机启动

systemctl enable nginx.service
目录
相关文章
|
3月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1538 4
|
3月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
191 5
|
11月前
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
441 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
8月前
|
Ubuntu 网络协议 应用服务中间件
在 Ubuntu 上安装 Nginx
在 Ubuntu 上安装和配置 Nginx 非常简单。首先更新系统包,然后通过 `apt` 安装 Nginx,检查服务状态并配置防火墙规则。访问服务器 IP 测试是否成功显示默认页面。还可管理服务、创建虚拟主机及排查常见问题,适合新手快速上手部署高性能 Web 服务。
1054 0
|
8月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
375 14
|
前端开发 应用服务中间件 nginx
docker安装nginx,前端项目运行
通过上述步骤,你可以轻松地在Docker中部署Nginx并运行前端项目。这种方法不仅简化了部署流程,还确保了环境的一致性,提高了开发和运维的效率。确保按步骤操作,并根据项目的具体需求进行相应的配置调整。
1122 25
|
负载均衡 应用服务中间件 Linux
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
这篇博客文章详细介绍了Nginx的下载、安装、配置以及使用,包括正向代理、反向代理、负载均衡、动静分离等高级功能,并通过具体实例讲解了如何进行配置。
616 5
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
|
应用服务中间件 网络安全 nginx
轻松上手Nginx Proxy Manager:安装、配置与实战
Nginx Proxy Manager (NPM) 是一款基于 Nginx 的反向代理管理工具,提供直观的 Web 界面,方便用户配置和管理反向代理、SSL 证书等。本文档介绍了 NPM 的安装步骤,包括 Docker 和 Docker Compose 的安装、Docker Compose 文件的创建与配置、启动服务、访问 Web 管理界面、基本使用方法以及如何申请和配置 SSL 证书,帮助用户快速上手 NPM。
11394 1
|
应用服务中间件 Linux nginx
Mac os 安装 nginx 教程(success)
这篇文章是关于如何在Mac OS系统上使用Homebrew安装nginx及其依赖,并解决安装过程中可能出现的权限问题。
1926 0
Mac os 安装 nginx 教程(success)
|
Ubuntu 搜索推荐 应用服务中间件
Nginx安装与使用
Nginx安装与使用