Nginxは、無料のオープンソースの高性能HTTPサーバーです。 Nginxは、その安定性、豊富な機能セット、シンプルな構成、および低リソース消費で知られています。
このチュートリアルでは、PHPサポート(PHP-FPMを介して)およびMariaDBサポートを使用してCentOS 7 /RHEL7にNginxをインストールする方法を示します。
PHP-FPMは代替のPHPFastCGI実装であり、あらゆるサイズのサイト、特に忙しいサイトに役立ついくつかの追加機能があります。
Linuxのインストール
CentOS 7 /RHEL7のステップバイステップインストールに関する記事は次のとおりです。
これでLinuxができました。次は、Apache、MySQL、およびPHPをLinuxにインストールします。 1つずつインストールしましょう。
最初に行う必要があるのは、rootユーザーとしてログインするか、rootユーザーに切り替えることです。
$ su
Nginxをインストール
Nginxリポジトリrpmをインストールして、公式サイトからNginxをダウンロードします。
### CentOS 7 ### rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm ### RHEL 7 ### rpm -Uvh http://nginx.org/packages/rhel/7/noarch/RPMS/nginx-release-rhel-7-0.el7.ngx.noarch.rpm
次のコマンドを使用してNginxをインストールします。
yum -y install nginx
インストール後にNginxサービスを開始します。
systemctl start nginx
ファイアウォール
ターミナルで次のコマンドを実行して、ファイアウォールを通過するHTTPリクエストを許可します。
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux
NginxログでSELinuxのエラーが発生した場合は、NginxのSELinuxポリシーを設定するためのチュートリアルをご覧ください。
それ以外の場合は、現在のセッションで一時的に次のコマンドを使用してSELinuxを無効にします。
setenforce 0
SELinuxを永続的に無効にすることをお勧めします。
テストNginx
Webブラウザーを開き、次のURLにアクセスします。
http:// your-ip-address次のページが表示されます。このページは、Ngnixがサーバーに正常にインストールされていることを確認します。
CentOS7のデフォルトのnginxドキュメントルートは/usr/ share / nginx /html/です。構成ファイルは/etc/nginxディレクトリにあります。
システムの起動時にNginxサービスを自動開始します。
systemctl enable nginx
MariaDBのインストール
CentOS 7 / RHEL 7は、ベースOSリポジトリからMariaDB v5.5を提供します。これは少し古く、まもなくEOLになります。 LEMPスタックにMariaDBv10.xまたはMySQL8.xをインストールすることを検討できます。まず、次のコマンドを発行してMariaDBをインストールします。
yum -y install mariadb mariadb-server
次のコマンドを使用してMariaDBサーバーを起動します。
systemctl start mariadb
システムの起動中にMariaDBが自動的に起動するようにします。
systemctl enable mariadb
インストールが完了したら、mysql_secure_installationコマンドを使用してMariaDBを保護する必要があります。 phpMyAdminをインストールして、Webブラウザを介してデータベースを管理できます。
PHPのインストール
PHP v5.4(サポート終了)
CentOSベースリポジトリで利用可能なPHPバージョン(v5.4)は、すでにサポートが終了しています。
PHP v7.3
最新バージョンのPHP(v7.3)を提供するサードパーティのリポジトリであるRemi。 Remiリポジトリを有効にするには、Remiリポジトリ自動構成パッケージをインストールします。
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
PHP-FPM(YUMコマンドを使用してPHP-FPM(FastCGI Process Manager))を介してPHPをインストールします。
yum install -y --enablerepo=remi-php73 php php-fpm php-mysqlnd php-cli
/etc/php-fpm.d/www.confファイルを編集します
vi /etc/php-fpm.d/www.conf
PHP-FPMがポート9000でリッスンしていることを確認します。
listen = 127.0.0.1:9000
次の値がコメント化されていないことを確認してください。
[.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
LEMPスタックのテスト
仮想ホストの作成
次の詳細については、Nginxサーバー上に名前ベースの仮想ホストを作成しましょう。
サーバー名 : server.itzgeek.local
ドキュメントルート : /usr/share/nginx/html/itzgeek.local
virtual.confという構成ファイルを作成し、/ etc / nginx / conf.d/virtual.confを編集します。
vi /etc/nginx/conf.d/virtual.conf
次のコンテンツを追加します。
server { server_name server.itzgeek.local; root /usr/share/nginx/html/itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/itzgeek.local$fastcgi_script_name; } }
/ etc / hostsファイルにドメイン(server.itzgeek.local)のホストエントリを作成します。
vi /etc/hosts
以下のようなホストエントリを追加します。
127.0.0.1 localhost.localdomain localhost server.itzgeek.local
ドキュメントのルートディレクトリを作成します。
mkdir /usr/share/nginx/html/itzgeek.local
仮想ホストのテスト
PHPをテストするには、作成した仮想ホストのドキュメントルートに1つのPHPファイルを配置します。ターミナルで、次の行をコピーして貼り付けます。
echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/itzgeek.local/index.php
サービスを再起動し、自動起動を有効にします。
systemctl restart nginx systemctl restart php-fpm systemctl enable php-fpm
次に、Webブラウザを開き、アドレスバーにドメインを入力します。
http://server.itzgeek.localページは次のようになります:
上のスクリーンショットから、PHPは機能しており、サーバーAPI行に示されているように、FPM/FastCGIを介して機能しています。
さらに下にスクロールすると、MariaDBサポート情報が表示されます。
結論
それで全部です。これで、CentOS 7 / RHEL 7でLEMPスタックが正常にセットアップされました。さらに、CentOS 7にphpMyAdminをインストールして、Webブラウザーを介してMariaDB/MySQLデータベースを管理できます。