このチュートリアルでは、Ubuntu 16.04サーバーにLEMPをインストールして構成する方法を説明します。知らない人のために、LEMPソフトウェアスタックはオープングループです。 -サーバーが動的なWebサイトやWebアプリをホストできるようにするために通常一緒にインストールされるソースソフトウェア。この用語は、実際にはLinuxオペレーティングシステムとNginx Webサーバー(LAMPスタックのApacheコンポーネントを置き換える)を表す略語です。サイトデータは(MariaDBを使用して)MySQLデータベースに保存され、動的コンテンツはPHPによって処理されます。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、独自のVPSでサイトをホストしていることを前提としています。インストールは非常に簡単です。 Ubuntu 16.04サーバーにLEMPスタック(Linux、Nginx、MariaDB、PHP)を段階的にインストールする方法を説明します。
Ubuntu16.04にLEMPをインストールする
手順1.まず、次のapt-get
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
apt-get update apt-get upgrade
注:Apache2などの別のWebサーバーがシステムにインストールされている場合は、競合を避けるために最初にサーバーを削除してください。Apacheをインストールするには、次のコマンドを実行します。
sudo service apache2 stop sudo apt-get remove --purge apache2 apache2-utils apache2.2-bin apache2-common -y sudo apt-get autoremove -y sudo apt-get autoclean -y
ステップ2.Ubuntu16.04にNginxをインストールします。
Ubuntuのデフォルトのパッケージマネージャーであるapt-getを使用してNginxをインストールします:
sudo apt-get install nginx
次のコマンドを使用してNginxサービスを開始します:
sudo systemctl start nginx
お気に入りのウェブブラウザを開き、URL http:// your-server's-address(インストールされている場合)を入力して、Nginxが実際に実行されていることを確認できます。これが表示されます:
手順3.NginxWebサーバーを構成します。
NginxをPHPで正しく動作させるには、Nginx構成ファイルに変更を加える必要があります。このガイドでは、単純なNginx構成ファイルを使用します。
sudo nano /etc/nginx/sites-available/default
以下をテキストエディタにコピーします:
server { listen 80; server_name your_domain_name.com; root /usr/share/nginx/html; index index.php index.html; location / { try_files $uri $uri/ =404; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /var/www/html; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
ファイルの編集が終了したら、次のコマンドでNginxを再起動します:
sudo nginx -t sudo systemctl restart nginx
ステップ4.Ubuntu16.04にMySQLをインストールします。
MySQLをUbuntu16.04にインストールするには、次のコマンドを実行します。
sudo apt-get install mysql-server php5-mysql
完了したら、次のコマンドを実行してMySQLがインストールされていることを確認できます。
systemctl status mysql
デフォルトでは、MySQLは強化されていません。mysql_secure_installation
を使用してMySQLを保護できます。 脚本。ルートパスワードを設定し、匿名ユーザーを削除し、リモートルートログインを禁止し、テストデータベースと安全なMySQLへのアクセスを削除する各手順を注意深く読んでください。
mysql_secure_installation
次のように構成します:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
MySQLにログインするには、次のコマンドを使用します(MySQLデータベースへのログインに使用するコマンドと同じであることに注意してください):
mysql -u root -p
ステップ5.Ubuntu16.04へのPHPのインストールと構成。
インストールを開始するには、次のコマンドを使用してUbuntu16.04にPHPをインストールします。
sudo apt-get install php php-fpm php7.0-mysql
インストールが完了したら、サーバーのphp.iniファイルを編集し、cgi.fix_pathinfo
を変更します。 パラメータ値は0です。デフォルトでは、セミコロンと値が1に設定されてコメント化されます。これにより、要求されたPHPファイルが見つからない場合に、PHPが利用可能な最も近いファイルを実行しようとします。これは悪いセキュリティ慣行なので、変更しましょう。以下のコマンドを実行します:
nano /etc/php/7.0/fpm/php.ini
ここで、cgi.fix_pathinfo
行、コメントを外し、値を 0に設定します 。ファイルを保存して閉じます。
MySQLとPHPの両方をインストールした後、サーバーはNginxを自動的に再起動する必要があります。再起動しない場合は、次のコマンドを実行します。
sudo systemctl restart nginx
PHPをテストするには、以下の内容でinfo.phpという名前のテストファイルを作成します。ファイルを保存し、ファイルを参照して、PHPが機能しているかどうかを確認します。
nano /usr/share/nginx/html/info.php
以下をテキストエディタにコピーします:
<?php phpinfo(); ?>
http://your_server_ip/info.php
でアクセスしてみてください 。 PHP情報ページがブラウザでレンダリングされている場合は、すべてが良好に見え、先に進む準備ができています。
おめでとうございます!LEMPスタックが正常にインストールされました。Ubuntu16.04システムにLAMP(Linux、Nginx、MySQL、PHP)をインストールするためにこのチュートリアルを使用していただきありがとうございます。追加のヘルプや役立つ情報については、 Nginx、MySQL、およびPHPの公式Webサイトを確認することをお勧めします。