Nginx WebルートをUbuntu 18.04の新しい場所に移動する方法

前書き

Nginxは、ドキュメントをディレクトリに保存するように設計された強力なHTTPサーバーです / var / www / html (ドキュメントルート)。このディレクトリは、他のオペレーティングシステムディレクトリと一緒にルートファイルシステムにあります。このドキュメントルートを転送することが重要な場合があります(/ var / www / html) 別にマウントされたファイルシステムなどの別のディレクトリに.


これは、主に1つのNginxインスタンスから多数のサイトにサービスを提供する場合に便利です。各ドキュメントルートを別のボリュームに配置することで、各Webサイトまたはクライアントの増大するニーズに簡単に対応できます。.

このチュートリアルは、Nginx Webルートを別の場所に転送するのに役立ちます.

前提条件

このガイドを完璧に実行するには、次のものが必要です。

  • Ubuntu 18.04サーバー
  • sudo権限を持つ非rootユーザー
  • Ubuntu 18.04サーバー用のSSL / TLS証明書のセットアップ.
  • さらに、このチュートリアルでは、 example.com ドメイン名として。このドメインを独自のドメイン名に置き換えることを忘れないでください.
  • 新しいドキュメントルートの場所。このガイドでは、ディレクトリを使用します / mnt / volume-nyc3-01, ドキュメントルートの新しい場所として.

ステップ1-ファイルを新しい場所に転送する

Nginxがインストールされ、完全に構成されている場合, / var / www / html デフォルトのドキュメントの場所またはドキュメントルートとして機能します。私たちの目標は、このドキュメントルートを別の場所に転送することです /var/www/example.com/html. まず、ドキュメントルートの正確な場所を確立してから、すべての重要なファイルを新しい場所に転送します.

grepコマンドを使用して、ドキュメントルートの場所を確認します。以下のコマンドを実行して、ディレクトリ/ etc / nginx / sites-enabled内の場所を検索します。

$ grep -R "ルート"/ etc / nginx / sites-enabled

このコマンドは、すべてのアクティブなサイトに検索を絞り込みます。含まれています -R grepがフルネームとrootディレクティブを特徴とする行の両方を出力できるようにするフラグ。これにより、次のような出力が得られます。

/etc/nginx/sites-enabled/example.com:root /var/www/example.com/html;
/ etc / nginx / sites-enabled / default:root / var / www / html;
/ etc / nginx / sites-enabled / default:#Apacheのドキュメントルートの場合、.htaccessファイルへのアクセスを拒否
/ etc / nginx / sites-enabled / default:#root /var/www/example.com;

出力は、既存の構成によって異なる場合があります。このため、grepを使用して正しいファイルを新しい場所に移動し、目的の構成ファイルに変更を加えていることを確認してください。.

ドキュメントルートの場所を確認したら、 rsync これらのファイルをコピーして新しい場所に移動するには.

$ sudo rsync -av /var/www/example.com/html / mnt / volume-nyc3-01

コマンドには -a ディレクトリの権限を保持し、他の重要なディレクトリプロパティを保持するフラグ。一方、-vフラグは、同期の監視に役立つ詳細な出力を提供します.

出力は次のようになります。

インクリメンタルファイルリストの送信
作成されたディレクトリ/ mnt / volume-nyc3-01
html /
html / index.html

送信318バイト、受信39バイト714.00バイト/秒
合計サイズは176で、スピードアップは0.49です。

これでファイルは準備できましたが、変更を適応させるためにNginx構成ファイルを変更する必要があります.

ステップ2-Nginx構成ファイルの更新

Nginx Webサーバーは、サイト固有の構成ファイルとグローバル構成ファイルの両方を利用します。ここでは、ファイルを変更します /etc/nginx/sites-enabled/example.com;ドメインexample.comのブロックサーバーファイル.

注意: example.comを自分のドメイン名に置き換える必要があります.

まず、次のコマンドを実行してこのファイルを開きます。

$ sudo nano /etc/nginx/sites-enabled/example.com

ファイルを開いたら、次で始まる行を見つけます。 ルート. 次に、この行を新しいドキュメントルートの場所の値で更新します。このチュートリアルでは、新しい場所として/ mnt / volume-nyc3-01 / htmlを使用します。次のものが必要です。

サーバー{

root / mnt / volume-nyc3-01 / html;
index index.html index.htm index.nginx-debian.html;
. . .
}
. . .

注意: 古いドキュメントへのルートパスの痕跡がある他の場所に注意してください。元のドキュメントファイルの詳細を示すルートパス、エイリアス、または書き換えは、ドキュメントルートの新しい場所を示すように更新する必要があります。.

必要な変更を行ったら、ブロックサーバーファイルを保存して閉じます.

ステップ3-Nginxを再起動する

ファイルを正常に移動し、Nginx構成ファイルに変更を加えました。次に、これらの変更を有効にするためにNginxサービスを再起動します.

まず、以下のコマンドを実行して構文を確認します。

$ sudo nginx -t

すべて問題なければ、以下の出力が得られます。

nginx:構成ファイル/etc/nginx/nginx.confsyntaxは問題ありません
nginx:設定ファイル/etc/nginx/nginx.conftestが成功しました

このテストが失敗した場合は、問題を調べて修正してください。次に、以下のコマンドを実行してNginxサービスを再起動します。

$ sudo systemctl restart nginx

サービスが再起動したら、Webルートtrabsferの影響を受けるすべてのサイトをチェックし、正しく実行されていることを確認します。結果に問題がなければ、以下のコマンドを実行して元のデータコピーを消去します。

$ sudo rm -Rf /var/www/example.com/html

それだ!

結論

おめでとう! Nginx Webルートを別の場所に転送し、Webサーバーの管理が簡単になりました.

これらの上位3つのLinuxホスティングサービスを確認する

FastComet

開始価格:
$ 2.95


信頼性
9.7


価格
9.5


使いやすい
9.7


サポート
9.7


特徴
9.6

レビューを読む

FastCometにアクセス

Hostinger

開始価格:
$ 0.99


信頼性
9.3


価格
9.3


使いやすい
9.4


サポート
9.4


特徴
9.2

レビューを読む

Hostingerにアクセス

ChemiCloud

開始価格:
$ 2.76


信頼性
10


価格
9.9


使いやすい
9.9


サポート
10


特徴
9.9

レビューを読む

ChemiCloudにアクセス

関連するハウツー記事

  • LEMP(Linux、Nginx、MySQL、PHP)スタックをUbuntu 18.04 VPSまたは専用サーバーにインストールする方法
    中間
  • Ubuntu 18.04 VPSまたは専用サーバーで自己署名SSL / TLS証明書を使用するようにNginxを構成する方法
    中間
  • PHP7.2をUbuntu 18.04にインストールする方法
    中間
  • Ubuntu 18.04 VPSまたは専用サーバーでNginx Webサーバーを強化する方法
    専門家
  • LEMP(Nginx、MariaDB、およびPHP)スタックをUbuntu 18.04 LTSにインストールする方法?
    中間
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me