ヘタレな素人システム管理者の管理人です。
地方自治体では、いろいろな相談受付等をやっている部署があるのですが・・・
なんとかしてネットで予約できないかという相談を受けました。
クラウドサービスでそのようなサービスは多々あるのですが・・・
そのいろいろな相談受け付けも年がら年中ある訳ではありませんので、クラウドサービスを契約するのもコスパが悪いわけです。
例えば、ヘアーサロン等の受け付けであれば、定休を除き毎日受け付けできるので、クラウドサービスも良いのですが・・・
ということで、どうにかタダでやる方法がないか調べまくった結果・・・
簡易的な予約システムであれば、WordPressのプラグインでも対応できるかも・・・
しれない
ということが分かったので、なんとか自前で立ち上げるテストをしみてることにしました。
VMwarePlayerにCentOSを立ち上げる
まずは、仮想環境でテストです。
WindowsPCのVMwarePlayer上にCentOSをインストールします。
X86_64をダウンロードすれば良いです。
リンクは次のとおり辿ればよいです。
CentOS-7-x86_64-DVD-2009.iso
VMwarePlayerにOSをインストールする方法はこちら
CentOSをアップデート
まずは、CentOSをアップデートします。
yum -y update
次に、SSHで接続できることを確認します。
teratermとwinscpdで確認します。
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でリポジトリファイルを作成します。
作成したリポジトリファイル(テキスト)を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
今回はここまでです。
コメント