9cubed
ブログ | Tailwind | Vite | Python | Node.js | Linux | PowerShell | その他 | 将棋ウォーズ | 歌の練習
< 前の記事

パッケージの更新

次の記事 >

PHP のインストール

Linux

[Linux]Nginx のインストール

公開日:2025-11-30
更新日:2025-11-30

1. 概要

Nginx をインストールします。

2. Nginx のインストール

依存関係の問題を防ぐため、パッケージを最新の状態にします。
コマンド
dnf check-update  # 更新可能なパッケージの確認

sudo dnf update

Nginx のインストール
コマンド
sudo dnf install nginx

3. Nginx の起動・停止

コマンド
     systemctl status  nginx  # ステータスの確認
sudo systemctl start   nginx  # 起動
sudo systemctl stop    nginx  # 停止
sudo systemctl restart nginx  # 再起動

sudo nginx -s reload          # 設定ファイルのリロード

4. Nginx の自動起動・自動起動の解除

OS を起動した時に、Nginx が自動的に起動するようにします。

コマンド
sudo systemctl enable  nginx  # 自動起動
sudo systemctl disable nginx  # 自動起動の解除

自動起動の設定の確認
コマンド
systemctl list-unit-files | grep nginx
結果は、STATE(現在の状態)、PRESET(デフォルト) の順で表示されます。
次のように表示されていれば、自動起動が有効になっています。
実行結果
nginx.service          enabled  disabled

5. ファイアウォールの設定

永続的に80番ポートを開けます。
その他の使用方法については、「ファイアウォールの使用方法」をご確認ください。
コマンド
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
sudo firewall-cmd --reload

# ファイアウォールの確認(ports: 80/tcp となっていれば OK)
sudo firewall-cmd --list-all

6. ポートフォワーディングの設定

Windows から VirtualBox の仮想マシンの Nginx にアクセスできるようにするため、
「Mintty で SSH を使って Linux に接続する」と同様に、ポートフォワーディングの設定をします。
今回は、8080 ポートへのアクセスを VM の 80 ポートへ転送するようにしました。


Windows のブラウザから http://localhost:8080/ にアクセスして、Nginx の Test Page が表示されれば完了です。

7. テストページの追加

7.1 nginx.conf のパスの確認

Nginx がコンパイルされた時のオプションから、nginx.conf のパスがわかります。

コマンド
nginx -V
実行結果
nginx version: nginx/1.26.3
built with OpenSSL 3.2.2 4 Jun 2024
TLS SNI support enabled
configure arguments: 
--prefix=/usr/share/nginx 
--sbin-path=/usr/sbin/nginx 
--modules-path=/usr/lib64/nginx/modules 
--conf-path=/etc/nginx/nginx.conf 
--error-log-path=/var/log/nginx/error.log 
--http-log-path=/var/log/nginx/access.log 
(省略)
--conf-path で、/etc/nginx/nginx.conf にあることがわかります。

7.2 ドキュメントルートの確認

nginx.conf の内容を表示して、ドキュメントルートを確認します。
コマンド
cat /etc/nginx/nginx.conf
実行結果(抜粋)
    server {
        listen       80;
        listen       [::]:80;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
    }
/usr/share/nginx/html がドキュメントルートです。

ドキュメントルートに test.html を作成します。
コマンド
sudo vi /usr/share/nginx/html/test.html
内容は「test」だけで OK です。

保存後に、http://localhost:8080/test.html にアクセスして、「test」と表示されれば OK です。

8. nginx.conf について

8.1 server ディレクティブ

1つの仮想サーバに対する設定です。
以前は1つのドメインを1台の物理的なサーバで処理していましたが、リクエストに Host ヘッダが追加され、複数のドメインに対応できるようになりました。
これにより、複数のサーバがあるように見えるため、1つの設定を仮想サーバと呼ばれています。
VirtualBox などの仮想マシンとは関係ありません。

server ディレクティブは複数定義することができます。
リクエストされた Host(ドメイン名やIPアドレス)とポートが一致する server ディレクティブが使用されます。

8.1 listen

仮想サーバのポート番号を指定します。
「[::]:80」は、IPv6用です。

8.2 server_name

ドメイン名やIPアドレスを指定します。
「_」を指定すると、他の server ディレクティブにマッチングしなかった場合にマッチします。

8.3 root

ドキュメントルートです。絶対パスで指定します。
相対パスでも指定できますが、基準となるパスがわかりづらいため、絶対パスが推奨です。

ちなみに相対パスの基準となるパスは、Nginx のインストールディレクトリです。
nginx -V の「--prefix」で確認できます。
実行結果
(省略)
--prefix=/usr/share/nginx
(省略)

8.4 include

指定したファイルを読み込みます。
ファイルの内容が挿入されるイメージとなるため、
例えば server ディレクティブの中で include した場合は、include されるファイルには server ディレクティブは不要です。
< 前の記事

パッケージの更新

次の記事 >

PHP のインストール

YouTube X

新着一覧

  • SCSS のインストールVite
  • Tailwind CSS のプロジェクトの作成Tailwind
  • TypeScriptのプロジェクトの作成Vite
  • Flask のインストールと動作確認Python
  • 簡易Webサーバーの作成Python
  • pipeline で文章の生成Python
  • pipeline で文章の要約Python
  • 音声から文字起こしPython
  • Node.js のインストールNode.js
  • .ps1(PowerShellスクリプト)を実行可能にするPowerShell

アーカイブ

  • 2025/12
  • 2025/11
  • 2025/10
  • 2025/09
  • 2025/08

以前のカテゴリー一覧

  • CakePHP3
  • CentOS7
  • HTML・CSS・JavaScript
  • Haskell
  • JavaScript
  • Kotlin
  • Laravel5
  • PHP
  • Python
  • Ruby
  • RubyOnRails5
  • TypeScript
  • Vue.js
  • Webサーバ講座
  • Webプログラミング講座
  • jQuery
  • linux
  • パソコン講座
  • ブログ
  • プログラミング講座
  • メモ帳作成講座
  • 数学

Copyright © 9cubed. All Rights Reserved.

プライバシーポリシー 利用規約
▲