让我们更深入地了解Nginx-安装篇

首先

最近大多数情况下使用Nginx而非Apache,是吧。
因此,我打算将关于我稍微设置了解的Nginx的调查内容进行记录。

这篇文章的目标读者

    Nginxをゼロから設定してみたい人

并没有详细解释的事情

    • dockerのコマンド

 

    • linuxのコマンド

 

    RailsやLaravel、Djangoなどでの使い方

在本文中所提到的工作环境

    • Mac Mini 2018

 

    • mac OS BigSur(version 11.1)

 

    • VirtualBox(version 6.1.16)

 

    • Ubuntu 20.04(on VirtualBox)

 

    Docker(version 20.10.2)

Nginx是什么?

Nginx是一种用于Web服务器的软件。
它被称为一种在操作系统和应用程序之间运行的中间件。
同等功能的软件还有Apache和IIS等。
※尽管Apache和Nginx本身可以被称为”Web服务器”,但在本文中,”Web服务器”是指服务器主机。
正如下图所示,当用户或管理员请求Web系统时,能够准确返回结果的是由Web服务器应用程序驱动的。

スクリーンショット 2021-01-31 16.03.48.png

让我们使用Docker创建一个用于Nginx实验的容器。

这次我们将在Ubuntu、CentOS和AmazonLinux2的映像上构建Nginx环境。
虽然DockerHub上有官方的Nginx映像,但这次我们不使用它。
要更详细地了解Nginx,最好是自己在空白的操作系统上进行安装,这样才能学到更多东西。

获取 Ubuntu 镜像并登录到容器里。


# ubuntuのDockerイメージを取得
$ docker pull ubuntu:latest

# イメージからコンテナを生成してデタッチドモード(バックグラウンド)で起動
$ docker run -itd --name ubuntu_nginx -p 8088:80 --privileged f63

# コンテナにログイン
$ docker exec -it b96 /bin/bash

只要您能够以root身份登录就可以了。

root@b96f5f7019a4:/#

获取CentOS镜像并登录到容器中。

# CentOSのDockerイメージを取得
# docker pull centos:latestとするとdebianのイメージがなぜか取得されるので注意!!
$ docker pull centos:centos8

# イメージからコンテナを生成してデタッチドモード(バックグラウンド)で起動
$ docker run -itd --name centos_nginx -p 8087:80 --privileged 300 /sbin/init

# コンテナにログイン
$ docker exec -it b96 /bin/bash

只要能够以root用户登录,就可以了。

root@b96f5f7019a4:/#

获取AmazonLinux2镜像,并登录到容器中。

# AmazonLinux2のDockerイメージを取得
$ docker pull amazonlinux:2

# イメージからコンテナを生成してデタッチドモード(バックグラウンド)で起動
$ docker run -itd --name amznlinux_nginx -p 8086:80 --privileged d79

# コンテナにログイン
$ docker exec -it b96 /bin/bash

只要您能按照以下步骤成功登录,就可以了。

bash-4.2#

让我们尝试在容器中安装nginx。

在这里,我们将在已登录的Docker容器内安装Nginx。
由于容器的操作系统初始状态下没有安装Nginx,所以需要自行安装。

在Ubuntu的容器中安装Nginx。

# まず、aptパッケージの更新を行います。
$ apt update

# 次に、Nginxをインストールします
# 途中で地域の選択を2回要求されるので、最初の地域はAsia、次の地域はTokyoの番号を入力してエンターを押してください。
$ apt install -y nginx

# Nginxのバージョンを確認します。
$ nginx -V

nginx version: nginx/1.18.0 (Ubuntu)
.
.
.

经过这些步骤,我们已经成功在Ubuntu上安装了Nginx。

在CentOS容器中安装Nginx。

# まず、yumパッケージの更新を行います
$ yum update -y

# Nginxをインストールします
$ yum install -y nginx

# Nginxのバージョンを確認します。
$ nginx -V

nginx version: nginx/1.14.1
.
.
.

通过这个步骤,在CentOS上成功安装了Nginx。

在 Amazon Linux 2 容器中安装 Nginx

# いきなりNginxをインストールします
$ amazon-linux-extras install -y nginx1

# Nginxのバージョンを確認します。
$ nginx -V

nginx version: nginx/1.18.0
.
.
.

通过这个,我们已经完成了在AmazonLinux2上安装Nginx的过程。

让我们来确认已安装的内容。

让我们来看看实际安装时所添加的文件。

在Ubuntu容器中进行确认

执行文件

/usr/sbin/nginx 可以翻译为 “/usr/sbin/nginx”

这个文件是被命令执行的程序的主体部分吧。

首页

/usr/share/nginx/html/index.html 的中文翻译如下:

当访问Nginx的初始页面时,将显示的HTML文件。

設定文件組的存儲目錄

/etc/nginx/可以进行如下的中文重述:

– Nginx的配置文件路径为/etc/nginx/。

在进行设置时,通常需要编辑该目录下的文件。

日志目录

/var/log/nginx/ 可以被改写成以下方式:

– /var/log/nginx/ -> Nginx的日志路径

在此目录下会创建访问日志和错误日志。

轮班设置文件

以下是对/etc/logrotate.d/nginx的本地化汉语翻译(只提供一种选择):

在Linux中,有一个名为LogRotate的功能可以进行日志分割。在这里,您可以定义分割Nginx日志的单位。

按模块分类的管理目录

/usr/lib/nginx/modules/ 可以被改写为:
/usr/lib/nginx/modules/

如果想给Web服务器添加特定的功能,可以使用此选项。
由于配置文件中包含了该目录的路径,请参阅另一篇文章中的配置部分以获取更详细的介绍。

在CentOS容器中进行确认。

几乎与Ubuntu的内容相同。

只需要一个选项,用汉语原生地复述以下内容:

执行文件

/usr/sbin/nginx可以进行重新配置。

这个文件是被命令执行的程序的主体。

最初的页面 de

/usr/share/nginx/html/index.html -> 网页目录:/usr/share/nginx/html/index.html

访问Nginx的初始页面时显示的HTML文件。
与Ubuntu不同的是,该目录下有以下文件。

    • 404.html

 

    • 50x.html

 

    • nginx-logo.png

 

    poweredby.png

目录文件

/var/log/nginx/ 可以被改写成:/变量/日志/引擎/

在这个目录中,将会创建访问日志和错误日志。与Ubuntu不同,初始状态下目录是空的。

按模块分别管理的目录

/usr/lib64/nginx/modules/ 可以被翻译为 “nginx 模块所在路径”。

如果想要在Web服务器上添加特定功能,可以使用它。
与Ubuntu时的目录路径不同呢。
并不是说Ubuntu只能运行32位操作系统。

在AmazonLinux2容器中进行确认。

执行文件

/usr/sbin/nginx 可以被改写成 “nginx可执行文件的路径是/usr/sbin/nginx”。

这个文件是用命令运行的程序的主体部分。

最初的网页

/usr/share/nginx/html/index.html
/usr/share/nginx/html/首页.html

当访问Nginx的初始页面时,显示的是HTML文件。与CentOS时不同的是,在这个文件所在的目录下,有以下的目录。

    • 404.html

 

    • 50x.html

 

    • nginx-logo.png

 

    • poweredby.png

 

    icons

目录日志

/var/log/nginx/ 的中文描述是「Nginx 的日志路径」。

在这个目录下会创建访问日志和错误日志
这和CentOS是一样的

模块分类的管理目录。

/usr/lib64/nginx/modules/ can be paraphrased as:
nginx模块位于/usr/lib64/nginx/modules/

如果想在Web服务器上添加特定功能,可以使用这个。
这与CentOS相同吧。

下集继续

在这篇文章中,我们尝试在Ubuntu、CentOS和AmazonLinux2镜像上安装Nginx。
下一篇文章将介绍从启动到配置更改的步骤。

非常感谢您一直阅读到最后。

广告
将在 10 秒后关闭
bannerAds