CentOSにWordPressを立てて簡易予約システムを動かす!その1

スポンサーリンク
050-VBA

ヘタレな素人システム管理者の管理人です。

地方自治体では、いろいろな相談受付等をやっている部署があるのですが・・・

なんとかしてネットで予約できないかという相談を受けました。

クラウドサービスでそのようなサービスは多々あるのですが・・・

そのいろいろな相談受け付けも年がら年中ある訳ではありませんので、クラウドサービスを契約するのもコスパが悪いわけです。

例えば、ヘアーサロン等の受け付けであれば、定休を除き毎日受け付けできるので、クラウドサービスも良いのですが・・・

ということで、どうにかタダでやる方法がないか調べまくった結果・・・

簡易的な予約システムであれば、WordPressのプラグインでも対応できるかも・・・

しれない

ということが分かったので、なんとか自前で立ち上げるテストをしみてることにしました。

VMwarePlayerにCentOSを立ち上げる

まずは、仮想環境でテストです。

WindowsPCのVMwarePlayer上にCentOSをインストールします。

CentOSはこちからダウンロードしてください。

X86_64をダウンロードすれば良いです。

リンクは次のとおり辿ればよいです。

Index of /pub/Linux/centos/7.9.2009/isos/x86_64

CentOS-7-x86_64-DVD-2009.iso

VMwarePlayerにOSをインストールする方法はこちら

CentOSをアップデート

まずは、CentOSをアップデートします。

yum -y update

次に、SSHで接続できることを確認します。

teratermとwinscpdで確認します。

teratermのダウンロードはこちら

winscpのダウンロードはこちら

apacheのインストール

次にapacheをインストールします。

yum -y install httpd

FWのポートを空けます

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent
firewall-cmd --zone=public --add-service=smtp --permanent
firewall-cmd --zone=public --add-port=25/tcp --permanent

とりえず、【http】【https】【smtp】を空けます。

FWをリロードします。

firewall-cmd --reload

FWのポートが空いたか確認します。

firewall-cmd --list-all

サービスの起動、自動起動、確認を行います。

systemctl start httpd.service
systemctl enable httpd.service
systemctl status httpd.service
スポンサーリンク

PHPをインストール

次にPHPをインストールします。

最新版を入れるとWordPressとの相性問題が出るのでコナレタPHP80を入れます。

まずは、リポジトリを追加します。

yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

次にPHP80をインストールします。

yum -y install php80
yum -y install php80-php
yum -y install php80-php-xml
yum -y install php80-php-xmlrpc
yum -y install php80-php-pecl-mcrypt
yum -y install php80-php-fpm
yum -y install php80-php-pecl-apcu
yum -y install php80-php-mbstring
yum -y install php80-php-pear
yum -y install php80-php-gd
yum -y install php80-php-json
yum -y install php80-php-pecl-json-post
yum -y install php80-php-pdo
yum -y install php80-php-mysqlnd
yum -y install php80-php-pecl-mysql
yum -y install php80-php-opcache
yum -y install php80-php-soap

沢山あって面倒です。

一括でインストールする場合は次のとおりです。

yum -y install php80 php80-php php80-php-xml php80-php-xmlrpc php80-php-pecl-mcrypt php80-php-fpm php80-php-pecl-apcu php80-php-mbstring php80-php-pear php80-php-gd php80-php-json php80-php-pecl-json-post php80-php-pdo php80-php-mysqlnd php80-php-pecl-mysql php80-php-opcache php80-php-soap

シンボリックリンクを作成します。

まずは、パスを確認します。

which php80

シンボリックリンクを作成します。

ln -sf /usr/bin/php80 /usr/bin/php

シンボリックリンクを確認します。

確認できれOKです。

php -v

ちなみにシンボリックリンクを削除する場合は次のとおりです。

unlink /usr/bin/php

PHPの設定

PHPを設定します。

【PHP.ini】のパスを確認します。

find / -name php.ini

パスはおそらく次のとおりです。

/etc/opt/remi/php80/php.ini

winscpを使って【php.ini】を編集します。

expose_php = On → expose_php = off
post_max_size = 8M → post_max_size = 20M
upload_max_filesize = 2M → upload_max_filesize = 20M
;date.timezone = → date.timezone = "Asia/Tokyo"
;mbstring.language = Japanese → 有効化
;mbstring.internal_encoding = → mbstring.internal_encoding = UTF-8
;mbstring.http_input = → mbstring.http_input = auto
;mbstring.http_output = → mbstring.http_output = UTF-8
;mbstring.encoding_translation = Off → mbstring.encoding_translation = On
;mbstring.detect_order = auto → 有効化
;mbstring.substitute_character = none → 有効化
スポンサーリンク

apacheを再起動して確認します。

systemctl restart httpd
systemctl status httpd

エラーがでないか確認します。

エラーがでなければOKです。

httpd -M | grep php
php -r 'phpinfo();'

【info.php】を作成して表示されるか確認します。

winscpで作成します。

/var/www/html/info.php

【info.php】の中身は次のとおりです。

<?php phpinfo(); ?>

ブログランキングにご協力ください!
ブログランキング・にほんブログ村へ

ブラウザでアクセスして表示されるか確認します。

http://IPアドレス/info.php

MariaDBをインストールする

次にMariaDBをインストールします。

インストール状況を確認する。

yum list installed | grep mariadb

恐らく【mariadb-libs】が入っているので削除する

yum -y remove mariadb-libs

リポジトリを作成して追加する

次のURLでリポジトリファイルを作成します。

Download MariaDB Server - MariaDB.org
REST API Release Schedule Reporting Bugs … Continue reading "Download MariaDB Server"

作成したリポジトリファイル(テキスト)をwinscpで作成【MariaDB.repo】します。

/etc/yum.repos.d/MariaDB.repo

最後の1行に次を追加します。

enable = 1

2023年3月時点での【10.11】の場合は次のとおりです。

# MariaDB 10.11 CentOS repository list - created 2023-03-14 15:17 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
# baseurl = https://rpm.mariadb.org/10.11/centos/$releasever/$basearch
baseurl = https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/yum/10.11/centos/$releasever/$basearch
module_hotfixes = 1
# gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB
gpgkey = https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
enable = 1

MariaDBをインストールします。

yum -y install MariaDB-server
yum -y install mariadb-devel
yum -y install MariaDB-client

一括でインストールする場合は次のとおりです。

yum -y install MariaDB-server MariaDB-devel MariaDB-client

サービスの起動、自動起動、確認を行います。

systemctl start mariadb.service
systemctl enable mariadb.service
systemctl status mariadb.service

初期設定を行います。

mariadb-secure-installation

画面から指示されますので、次のとおり入力します。

Enter current password for root (enter for none): 何も入力しない
Switch to unix_socket authentication [Y/n] y
New password:	'パスワードを入力する
Re-enter new password:	'確認入力	
Remove anonymous users? [Y/n] y	'匿名ユーザーのアクセス削除
Disallow root login remotely? [Y/n] y	'rootのリモートアクセス削除
Remove test database and access to it? [Y/n] y	'テストDBの削除
Reload privilege tables now? [Y/n] y	'設定の即時適用

初期設定でエラーが出る場合は次を試してみてください(非推奨)/var/lib/mysql/mysqlを削除する

cd /var/lib/mysql
rm -rf mysql

インストール先を確認します。

which mysqld

設定ファイルの変更します。

vi /etc/my.cnf.d/server.cnf

[server]と[mysql] ´の下の行に次の行をそれぞれ追加します。

character-set-server=utf8

サービスを再起動します。

systemctl restart mariadb

今回はここまでです。

その2はこちら

その3はこちら

ブログ開設に必要なドメイン取得、サーバーレンタル、ASPの登録等は、こちらのサイトから!

コメント

タイトルとURLをコピーしました