Ubuntu 20.04 上安装 Nginx 转载
Posted 桑中子衿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu 20.04 上安装 Nginx 转载相关的知识,希望对你有一定的参考价值。
nginx 发音 “engine x” ,是一个开源软件,高性能 HTTP 和反向代理服务器,用来在互联网上处理一些大型网站。它可以被用作独立网站服务器,负载均衡,内容缓存和针对 HTTP 和非 HTTP 的反向代理服务器。
和 Apache相比,Nginx 可以处理大量的并发连接,并且每个连接占用一个很小的内存。
本文描述如何在 Ubuntu 20.04上安装和管理 Nginx。
一、前提条件
在继续之前,保证以 sudo 用户身份登录,并且你不能运行 Apache 或者 其他处理进程在80端口和443端口。
二、安装 Nginx
Nginx 在默认的 Ubuntu 源仓库中可用。想要安装它,运行下面的命令:
sudo apt update
sudo apt install nginx
一旦安装完成,Nginx 将会自动被启动。你可以运行下面的命令来验证它:
sudo systemctl status nginx
输出类似下面这样:
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-05-02 20:25:43 UTC; 13s ago
...
三、配置防火墙
现在你已经在你的服务器上安装和运行了 Nginx,你需要确保你的防火墙被配置好,允许流量通过 HTTP(80
)和 HTTPS(443
)端口。假设你正在使用UFW
,你可以做的是启用 ‘Nginx Full’ profile,它包含了这两个端口:
sudo ufw allow \'Nginx Full\'
想要验证状态,输入:
sudo ufw status
输出将会像下面这样:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
Nginx Full ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)
四、测试安装
想要测试你的新 Nginx 安装,在你的浏览器中打开http://YOUR_IP
,你应该可以看到默认的 Nginx 加载页面,像下面这样:
五、Nginx 配置文件结构以及最佳实践
- 所有的 Nginx 配置文件都在
/etc/nginx/
目录下。 - 主要的 Nginx 配置文件是
/etc/nginx/nginx.conf
。 - 为每个域名创建一个独立的配置文件,便于维护服务器。你可以按照需要定义任意多的 block 文件。
- Nginx 服务器配置文件被储存在
/etc/nginx/sites-available
目录下。在/etc/nginx/sites-enabled
目录下的配置文件都将被 Nginx 使用。 - 最佳推荐是使用标准的命名方式。例如,如果你的域名是
mydomain.com
,那么配置文件应该被命名为/etc/nginx/sites-available/mydomain.com.conf
- 如果你在域名服务器配置块中有可重用的配置段,把这些配置段摘出来,做成一小段可重用的配置。
- Nginx 日志文件(access.log 和 error.log)定位在
/var/log/nginx/
目录下。推荐为每个服务器配置块,配置一个不同的access
和error
。 - 你可以将你的网站根目录设置在任何你想要的地方。最常用的网站根目录位置包括:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
六、总结
我们已经向你展示了如何在 Ubuntu 20.04 上安装 Nginx。
你可以开始部署你的应用,并且使用 Nginx 作为一个网络或者代理服务器。
以上是关于Ubuntu 20.04 上安装 Nginx 转载的主要内容,如果未能解决你的问题,请参考以下文章
#yyds干货盘点#Ubuntu 基于Nginx1.8的Golang环境搭建(Ubuntu 20.04 + Nginx1.8 + Golang 1.17 )
Python 通过ffmpeg实现实时推流(ubuntu20.04+ffmpeg+nginx)