GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu18.04VPSでPHPバージョンが異なる複数のWebサイトをホストする

サーバーでNginxで複数のバージョンのPHPを使用する理由はいくつかあります。 PHP7.0で実行されるアプリケーションとPHP7.2で実行されるアプリケーションの2つのアプリケーションがある場合は、サーバーで複数のPHPバージョンを使用する必要があります。 PHPのバージョンごとに個別のサーバーを使用することもできますが、ホスティングコストが増加します。 Nginxを使用して複数のバージョンのPHPをインストールすることは、ホスティングコストを削減するための最良の選択です。

このチュートリアルでは、複数のバージョンのPHPをインストールし、両方のバージョンのPHPで動作するようにNginxを構成します。

前提条件

  • 2GB以上のRAMを搭載したAtlantic.NetCloud上の新しいUbuntu18.04サーバーVPS。
  • VPSIPアドレスで指定された2つの有効なドメイン名。このチュートリアルでは、site1.example.comとsite2.example.comを使用します。

注:DNSレコードを管理するには、AtlanticDNSガイドを参照してください。

ステップ1-Atlantic.Netクラウドサーバーを作成する

まず、Atlantic.Netクラウドサーバーにログインします。オペレーティングシステムとしてUbuntu18.04を選択し、少なくとも2GBのRAMを搭載した新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。

Ubuntu 18.04サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。

apt-get update -y

ステップ2–NginxとMariaDBをインストールする

まず、サーバーにNginxWebサーバーをインストールする必要があります。次のコマンドを実行するだけでNginxをインストールできます:

apt-get install nginx mariadb-server -y

インストールしたら、NginxサーバーとMariaDBサーバーを起動し、次のコマンドを使用してシステムの再起動後に起動できるようにします。

systemctl start nginx
systemctl start mariadb
systemctl enable nginx
systemctl enable mariadb

ステップ3–PHP-FPMを使用してPHP7.0およびPHP7.2をインストールします

まず、複数のバージョンのPHPをインストールするには、サーバーにPHPリポジトリを追加する必要があります。次のコマンドを使用して、OndrejPHPリポジトリを追加できます。

apt-get install software-properties-common -y
add-apt-repository ppa:ondrej/php

次に、次のコマンドでリポジトリを更新します。

apt-get update -y

リポジトリが最新になったら、次のコマンドを使用してPHP 7.0、PHP 7.2、およびPHP-FPMをインストールします。

apt-get install php7.0 php7.0-fpm php7.2 php7.2-fpm -y

インストールが完了したら、次のコマンドを使用してPHP-FPMのステータスを確認します。

systemctl status php7.0-fpm
systemctl status php7.2-fpm

ステップ4–Website1とWebsite2を作成する

次に、次のコマンドを使用して、Website1とWebsite2のドキュメントルートディレクトリを作成します。

mkdir /var/www/html/site1.example.com
mkdir /var/www/html/site2.example.com

次に、ウェブサイトsite1.example.comのサンプルindex.phpファイルを作成します。

nano /var/www/html/site1.example.com/index.php

次の行を追加します:

<?php
phpinfo();
?>

ファイルを保存して閉じます。次に、site2.example.comのindex.phpファイルを作成します。

nano /var/www/html/site2.example.com/index.php

次の行を追加します:

<?php
phpinfo();
?>

ファイルを保存して閉じます。次に、両方のWebサイトの所有権をwww-dataに変更します:

chown -R www-data:www-data /var/www/html/site1.example.com
chown -R www-data:www-data /var/www/html/site2.example.com

ステップ5–Nginxを構成する

次に、PHP7.0を使用するドメインsite1.linuxbuz.comのNginx仮想ホストファイルを作成する必要があります。

次のコマンドで実行できます:

nano /etc/nginx/sites-available/site1.example.com.conf

次の行を追加します:

server {
   listen 80;
   root /var/www/html/site1.example.com/;
   index index.php;
   server_name site1.example.com;
   location / {
      try_files $uri $uri/ =404;
   }
   location ~ \.php$ {
      try_files $uri =404;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
   }
}

ファイルを保存して閉じます。

次に、PHP7.2を使用するドメインsite2.example.comのNginx仮想ホストファイルを作成します。

nano /etc/nginx/sites-available/site2.example.com.conf

次の行を追加します:

server {
   listen 80;

   root /var/www/html/site2.example.com/;
   index index.php;

   server_name site2.example.com;

   location / {
      try_files $uri $uri/ =404;
   }

   location ~ \.php$ {
      try_files $uri =404;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
   }
}

ファイルを保存して閉じます。次に、次のコマンドを使用して両方の仮想ホストファイルを有効にします。

ln -s /etc/nginx/sites-available/site1.example.com.conf /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/site2.example.com.conf /etc/nginx/sites-enabled/

最後に、NginxとPHP-FPMサービスを再起動して、すべての構成変更を適用します。

systemctl restart nginx
systemctl restart php7.0-fpm
systemctl restart php7.2-fpm

ステップ6–両方のWebサイトをテストする

これで、両方のWebサイトがインストールされ、複数のバージョンのPHPで実行されるように構成されました。

次に、Webブラウザーを開き、URLhttp://site1.example.comを入力します。 Webサイト1がPHP7.0で実行されていることを示す次のページが表示されます。

次に、Webブラウザーを開き、URLhttp://site2.example.comを入力します。 Webサイト2がPHP7.2で実行されていることを示す次のページが表示されます。

今のところ以上です。

結論

上記の記事では、Ubuntu18.04でPHPのバージョンが異なる複数のWebサイトをホストする方法を学びました。これで、さまざまなアプリケーションでさまざまなPHPバージョンを使用するための十分な知識が得られます。ウェブサイトをホストするための仮想プライベートサーバーを使い始める準備ができている場合は、Atlantic.NetのVPSホスティングページにアクセスして、最適なホスティングパッケージを見つけてください。


Linux
  1. pleskのPHPの複数のバージョン

  2. UbuntuVPSにNginxとPHP-FPMを使用してOwnCloud7をインストールします

  3. Ubuntu16.04にNginxを使用してPHP7.1をインストールします

  1. LinuxでPyenvを使用して複数のPythonバージョンを管理する方法

  2. NGNIXの異なるドメインに対して複数のバージョンのPHPを実行する

  3. UbuntuでNginxを使用して複数のPHPバージョンを実行する方法は?

  1. LinuxでjEnvを使用して複数のJavaバージョンを管理する方法

  2. ubuntuでApache仮想ホストを構成する方法

  3. Ubuntu 12.04 LTS に複数のバージョンの PHP がインストールされているかどうかを確認するにはどうすればよいですか?