Debian7でNginxサーバーブロックを設定する方法
サーバーブロック
nginxは「サーバーブロック」という用語を好みますが、これらはユーザーが単一のVPSから複数のWebサイトまたはドメインを実行できるようにする単なる仮想ホストです。 このチュートリアルではnginxを使用しますが、従来の目的とApacheとの簡単な比較のために、単に仮想ホストと呼ぶことができます。
1)VPSを設定する
このチュートリアルの手順では、ユーザーが仮想プライベートサーバーに対するroot権限を持っている必要があります。 あなたはそれを設定する方法を見ることができますサーバーの初期設定チュートリアル (ステップ3および4)。 さらに、このチュートリアル全体で「ユーザー」を参照します。これは、任意のユーザー名に自由に置き換えてください。
VPSにnginxがすでにインストールされている必要があります。 そうでない場合は、次のコマンドでダウンロードできます。
sudo apt-get install nginx
*注意:仮想ホストが機能していることをテストするには、実際のDNS承認済みドメインまたはIPアドレスを指定する必要があります。 このチュートリアル全体を通して、「example.com」を使用して、正しいドメイン名をいつ挿入する必要があるかを示します。
2)新しいディレクトリを作成します
新しいウェブサイトの情報を保存するディレクトリを作成する必要があります。 この場所は、後でApache仮想構成ファイルのドキュメントルートになります。
コード行に-pを追加すると、コマンドは新しいディレクトリのすべての親を自動的に生成します。
sudo mkdir -p /var/www/example.com/public_html
3)VPSの権限
ディレクトリの所有権を適切なユーザーに付与することを忘れないでください。 これを怠ると、ルートシステムに残ります。 これを実行するには、次のコマンドに従います。
sudo chown -R user:user /var/www/example.com/public_html
sudo chmod 755 /var/www
これにより、所有権が正しいユーザーに属していることが確認されるだけでなく、2番目のコマンドによって、すべてのユーザーが新しいファイルを読み取れるようになります。
4)ページを作成します
このチュートリアルでは、nanoを使用してVPS上の構成ファイルを編集します。 通常、他のテキストエディタよりも簡単に使用できます。 ただし、viなどの別のものを使用する場合は、どちらかを自由に使用してください。
以前に作成したディレクトリ内にindex.htmlという新しいファイルを作成する必要があります。
sudo nano /var/www/example.com/public_html/index.html
ファイルにテキストを追加して、サイトが仮想ホストにリダイレクトするときに何かを確認できるようにすることができます。
<html> <head> <title>www.example.com</title> </head> <body> <h1>Success: You Have Set Up a Virtual Host</h1> </body> </html>
保存して終了。
5)新しい仮想ホストファイルを作成します
次のステップは、すべての仮想ホスト情報を含む新しいファイルを作成することです。
便利なことに、nginxはsites-availableディレクトリ(/ etc / nginx / sites-available)にこのファイルのレイアウトを提供します。 必要なのは、テキストを新しいカスタムファイルにコピーすることだけです。
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com
6)仮想ホスト
新しい仮想ホストファイルを開きます—仮想ホストをセットアップするために必要なすべての情報が表示されます。
sudo nano /etc/nginx/sites-available/example.com
いくつかの簡単な変更を加える必要があります。
server { listen 80; ## listen for ipv4; this line is default and implied #listen [::]:80 default ipv6only=on; ## listen for ipv6 root /var/www/example.com/public_html; index index.html index.htm; # Make site accessible from http://localhost/ server_name example.com; }
- 「listen80」のコメントを外して、そのポートから入ってくるすべてのトラフィックがサイトに向けられるようにします
- 手順1で作成したディレクトリと一致するようにルート拡張子を変更します。 ドキュメントルートが正しくないか存在しない場合、仮想ホストを設定することはできません
- サーバー名をDNS承認済みドメイン名に変更するか、ドメイン名がない場合はIPアドレスを使用できます
保存して終了。
最後に、クラウドサーバー上のsites-availableディレクトリとsites-enabledディレクトリの間にシンボリックリンクを作成して、ホストをアクティブ化する必要があります。 これはスキップするのが簡単なステップなので、必ず次のコマンドを入力してください。
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
「競合するサーバー名エラー」を回避し、サイトにアクセスすると正しい情報が表示されるようにするには、デフォルトのnginxサーバーブロックを削除します。
sudo rm /etc/nginx/sites-enabled/default
ステップ6—nginxを再起動します
構成に多くの変更を加えました。 nginxを再起動し、変更を表示します。
sudo service nginx restart
7)オンラインにしましょう
仮想ホストの設定が完了したら、ブラウザにドメイン名またはIPアドレスを入力します。 次のようなメッセージが表示されます。成功-仮想ホストをセットアップしました。
おめでとう! クラウドサーバーに仮想ホストを追加するには、新しいドキュメントルート/適切なドメイン名を使用して上記のプロセスを繰り返すだけです。