GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS 7.4(LAMP)にApache、PHP 7.2、MySQLをインストールする方法

このチュートリアルでは、PHP(mod_php)とMySQLデータベースを使用してCentOS7サーバーにApacheウェブサーバーをインストールする方法を示します。頭字語のLAMPはLの略です。 inux、 A pache、 M ySQL、 P HP。

この更新されたチュートリアルは、CentOS 7.4への最新のPHPバージョン(7.0、7.1、および7.2)のインストールを示しています。

1予備メモ

このチュートリアルでは、ホスト名server1.example.comをIPp192.168.1.100で使用します。これらの設定はユーザーによって異なる場合があるため、必要に応じて置き換える必要があります。

ここにEPELリポジトリを追加して、最新のphpMyAdminを次のようにインストールします。

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
yum -y install epel-release

シェルでファイルを編集するには、nanoエディターをインストールします。ファイルの編集にviを使用する場合は、この手順をスキップしてください。

yum -y install nano

2 MySQL/MariaDBのインストール

MariaDBは、元のMySQL開発者であるMontyWideniusのMySQLフォークです。 MariaDBはMySQLと互換性があり、ここではMySQLの代わりにMariaDBを使用することを選択しました。このコマンドを実行して、yumを使用してMariaDBをインストールします:

yum -y install mariadb-server mariadb

次に、MySQLのシステム起動リンクを作成し(システムが起動するたびにMySQLが自動的に起動するように)、MySQLサーバーを起動します。

systemctl start mariadb.service
systemctl enable mariadb.service

MySQLルートアカウントのパスワードを設定します:

mysql_secure_installation
[[email protected] ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): <--ENTER
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n]
New password: <--yourmariadbpassword
Re-enter new password: <--yourmariadbpassword
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] <--ENTER
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] <--ENTER
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] <--ENTER
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] <--ENTER
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!
[[email protected] ~]#
 

3Apacheのインストール

CentOS7にはApache2.4が付属しています。 ApacheはCentOS7パッケージとして直接入手できるため、次のようにインストールできます。

yum -y install httpd

これがインストールプロセスのスクリーンショットです。

次に、起動時にApacheを起動するようにシステムを構成します...

systemctl start httpd.service
systemctl enable httpd.service

外部からWebサーバーにアクセスできるようにするには、ファイアウォールでHTTP(80)およびHTTPS(443)ポートを開く必要があります。 CentOSのデフォルトのファイアウォールはfirewalldであり、firewalld-cmdコマンドで構成できます。

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

次に、ブラウザをサーバーのIPアドレス(私の場合はhttp://192.168.1.100)に移動すると、Apacheプレースホルダーページが表示されます。

4PHPのインストール

CentOSがデフォルトで付属しているPHPバージョンはかなり古い(PHP 5.4)。したがって、この章では、RemiリポジトリからPHP7.0や7.1などの新しいPHPバージョンをインストールするためのいくつかのオプションを紹介します。

RemiCentOSリポジトリを追加します。

rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

yum-config-managerユーティリティが必要なので、yum-utilsをインストールします。

yum -y install yum-utils

yumupdateを実行します

yum update

次に、サーバーで使用するPHPバージョンを選択する必要があります。 PHP 5.4を使用する場合は、4.1章に進んでください。 PHP 7.0をインストールするには、4.2章のコマンドに従います。PHP7.1の場合は4.3章、PHP7.1の場合は4.4章を使用します。 Apache mod_phpでは一度に1つのPHPバージョンしか使用できないため、4.xの章の1つだけに従ってください。すべてではありません。

4.1PHP5.4をインストールする

PHP 5.4をインストールするには、次のコマンドを実行します。

yum -y install php

4.2PHP7.0のインストール

PHP7.0とApachePHP7.0モジュールは次のようにインストールできます。

yum-config-manager --enable remi-php70
yum -y install php php-opcache

4.3PHP7.1のインストール

代わりにPHP7.1を使用する場合は、次を使用してください。

yum-config-manager --enable remi-php71
yum -y install php php-opcache

4.4PHP7.2のインストール

代わりにPHP7.2を使用する場合は、次を使用してください。

yum-config-manager --enable remi-php72
yum -y install php php-opcache

この例とダウンロード可能な仮想マシンでは、PHP7.2を使用します。

変更を適用するには、Apacheを再起動する必要があります:

 systemctl restart httpd.service

5PHPのテスト/PHPインストールの詳細の取得

デフォルトのWebサイトのドキュメントルートは/var/ www/htmlです。そのディレクトリに小さなPHPファイル(info.php)を作成し、ブラウザで呼び出してPHPのインストールをテストします。このファイルには、インストールされているPHPのバージョンなど、PHPのインストールに関する多くの役立つ詳細が表示されます。

nano /var/www/html/info.php
<?php
phpinfo();

次に、そのファイルをブラウザ(http://192.168.1.100/info.phpなど)で呼び出します。

ご覧のとおり、PHP 7.2は機能しており、サーバーAPI行に示されているように、Apache2.0ハンドラーを介して機能しています。さらに下にスクロールすると、PHPですでに有効になっているすべてのモジュールが表示されます。 MySQLはそこにリストされていません。つまり、PHPではMySQLがまだサポートされていません。

6PHPでのMySQLサポートの取得

PHPでMySQLをサポートするには、php-mysqlndパッケージをインストールします。他のPHPモジュールをインストールすることをお勧めします。また、アプリケーションでそれらが必要になる場合もあります。次のような利用可能なPHP5モジュールを検索できます:

yum search php

必要なものを選び、次のようにインストールします:

yum -y install php-mysqlnd php-pdo

次のステップでは、Wordpress、Joomla、DrupalなどのCMSシステムに必要ないくつかの一般的なPHPモジュールをインストールします。

yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel

次に、ApacheWebサーバーを再起動します。

 systemctl restart httpd.service

次に、ブラウザにhttp://192.168.1.100/info.phpをリロードし、モジュールセクションまでスクロールダウンします。これで、curlなどの新しいモジュールがたくさん見つかるはずです。:

PHP情報の出力が不要になった場合は、セキュリティ上の理由からそのファイルを削除してください。

rm /var/www/html/info.php

7phpMyAdminのインストール

phpMyAdminは、MySQLデータベースを管理するためのWebインターフェイスです。
phpMyAdminは次のようにインストールできます。

yum -y install phpMyAdmin

次に、phpMyAdminを設定します。 phpMyAdminがローカルホストからだけでなく接続を許可するようにApache構成を変更します(スタンザをコメントアウトし、「Require allgranted」行を追加することにより):

nano /etc/httpd/conf.d/phpMyAdmin.conf
[...]
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8

<IfModule mod_authz_core.c>
# Apache 2.4
# <RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
# </RequireAny>
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
<Directory /usr/share/phpMyAdmin/> Options none AllowOverride Limit Require all granted </Directory>

[...]

次に、phpMyAdminの認証をcookieからhttp:

に変更します。
nano /etc/phpMyAdmin/config.inc.php
[...]
$cfg['Servers'][$i]['auth_type']     = 'http';    // Authentication method (config, http or cookie based)?
[...]

Apacheを再起動します:

 systemctl restart httpd.service

その後、http://192.168.1.100/phpmyadmin/からphpMyAdminにアクセスできます:

8仮想マシンとしてダウンロード

このセットアップは、howtoforgeサブスクライバー向けにova / ovf形式(VMWareおよびVirtualboxと互換性があります)の仮想マシンのダウンロードとして利用できます。

VMのログインの詳細

  • Linuxのrootパスワードはhowtoforgeです。
  • MySQLのルートパスワードは次のとおりです:howtoforge

最初のログイン時に両方のパスワードを変更してください。

  • VMのIPアドレスは192.168.1.100です

Apache:http://httpd.apache.org/
PHP:http://www.php.net/
MySQL:http://www.mysql.com/
CentOS: http://www.centos.org/
phpMyAdmin:http://www.phpmyadmin.net/


Cent OS
  1. phpMyAdminとAPCキャッシュを使用してCentOS6にLAMP(Linux Apache MySQLおよびPHP)をインストールする方法

  2. LAMPをインストールしてCentOS6でosTicketを実行する方法

  3. CentOS7にLAMPをインストールする方法

  1. CentOS 7(LAMP)にApache、PHP、MySQLをインストールする

  2. CentOS / RHEL 7にApache、MySQL、PHP(LAMP)をインストールする方法

  3. Rocky Linux / Centos 8にApacheとPHP(LAMPスタック)をインストールする方法

  1. CentOS 7.3(LAMP)にApache、PHP 7.1、MySQLをインストールする方法

  2. CentOS 7.6にApache、PHP 7.3、MySQLをインストールする方法

  3. CentOS 7 / RHEL 7にLinux、Apache、MariaDB、PHP(LAMPスタック)をインストールする方法