3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

初心者向け! コピペでできるApache、PHP7、MariaDBインストール for CentOS7

Last updated at Posted at 2018-05-20

【2017年5月25日追記】PHPのインストール方法が間違えていました。ご迷惑をおかけしました。

PHPのWebプログラムを動かすとき、多くの場合に必要となる3点セットをまとめてみました。コピペで標準的なインストールができるので、とても便利です。

※初心者(CentOS初めて使ってから6ヵ月の学生)が、まずは動かしてみたい!!という、これから始める人のために書きます。rootユーザーで作業します。間違えていたらごめんなさい。

Apache インストール

yum install -y httpd
systemctl restart httpd
systemctl enable httpd
mkdir /var/log/httpd/sample_project
apachectl configtest
apachectl restart
systemctl restart httpd
firewall-cmd --permanent --zone=public --add-service=http

firewall-cmd --reload
firewall-cmd --list-all

こちらの記事を参考にさせていただきました。詳細な手順、各コマンドの意味はこちらから。

PHP5.4 インストール


yum remove php-* -y

yum install --enablerepo=remi,remi-php54 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt php-mysqli -y

yum -y install mariadb-server
systemctl restart httpd.service

php --version

echo extension=pdo.so > /etc/php.ini
echo extension=php_pdo.dll > /etc/php.ini
echo extension=pdo_mysql.so > /etc/php.ini


PHP7.x インストール


yum remove php-* -y

yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum -y install --enablerepo=remi,remi-php73 php php-mbstring php-xml php-xmlrpc php-gd php-pdo php-pecl-mcrypt php-mysqlnd php-pecl-mysql

こちらの記事を参考にさせていただきました。とても丁寧で分かりやすいので、各コマンドの意味を確認するのにとても役立ちます。

MariaDB インストール

yum install -y mariadb mariadb-server
rpm -qa | grep maria

systemctl enable mariadb.service
systemctl start mariadb.service

mysql_secure_installation

こちらの記事を参考にさせていただきました。詳細な手順、各コマンドの意味はこちらから。

なお、MariaDBはデータベースの作成や、ユーザーの追加も必要です。私はこちらの記事にお世話になりました。

phpMyAdminのインストール

ネコでもわかる!さくらのVPS講座 ~第五回「phpMyAdminを導入しよう」に記載された手順で導入します。

yum install -y --enablerepo=remi,remi-php71 phpMyAdmin

続いて、/etc/httpd/conf.dを変更します。vimの使いかたはよく使う Vim のコマンドまとめを参考にしました。

cd /etc/httpd/conf.d/
vim phpMyAdmin.conf

<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>
   </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/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require all granted
       Require ip ::1
     </RequireAny>
   </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>

とすれば大丈夫です。最後に、httpdを再起動します。

systemctl restart httpd

アクセスできないとき

初めての構築で苦戦した箇所をまとめておきます。

ファイヤーウォール設定

私は、ConoHaVPS及びIDCFクラウドVPSを使用して試してみました。ConoHaは簡単なのですが、IDCFはセキュリティーにうるさく、ファイヤーウォールや秘密鍵などの設定が必要です(でも、月額500円は学生の味方☆彡)。慣れるまではConoHaの方が良いかもしれません。
私の場合、ファイヤーウォールなどの設定をコントロールパネルで確認して解決しました。

ファイルのパーミッション

ファイルのアクセス権限が非公開になっていてもアクセスできません。その他のパーミッションで、一度権限を777にしてみましょう。実行できることが確認出来たら、用途に適した属性値に直しましょう。再帰的に行っていない場合などもありますので、ご注意を。

※訂正できるかわかりませんが、間違いがあったら、コメントください。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?