【Plamo7.1】PHPをソースからインストール/初期設定(4)

【Plamo7.1】PHPをソースからインストール/初期設定(4)

前記事のどうしても php に pdo_mysql.so が組み込めない件、結局 php をソースからインストールすることで組み込むことができました。

【Plamo7.1】PHP, MySQL/初期設定(3)

01PHP のインストール

https://www.php.net/downloads.php

から安定版の 7.3.6 をもらってきます。

どこでもいいのですが、/usr/local/src とかに移動して作業します。configure のオプションは、Plamo 用のパッケージファイルのオプションを phpinfo から拾い、すべてつけてみました。

# wget https://www.php.net/distributions/php-7.3.6.tar.gz
# tar zxvf php-7.3.6.tar.gz
# cd php-7.3.6
# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=${prefix}/share/man --with-libdir=lib --sysconfdir=/etc/php --with-layout=GNU --with-config-file-path=/etc/php --with-config-file-scan-dir=/etc/php/conf.d --disable-rpath --with-apxs2=/usr/bin/apxs --enable-bcmath=shared --enable-calendar=shared --enable-dba=shared --enable-exif=shared --enable-ftp=shared --enable-intl=shared --enable-mysqlnd --enable-mbstring=shared --enable-pcntl --enable-shmop=shared --enable-soap=shared --enable-sockets=shared --enable-sysvmsg=shared --enable-sysvsem=shared --enable-sysvshm=shared --enable-zip=shared --with-bz2=shared --with-curl=shared --with-gd=shared --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-webp-dir=/usr --with-gettext=shared --enable-gd-jis-conv --with-gmp=shared --with-iconv=shared --with-ldap=shared --with-pspell=shared --with-xmlrpc=shared --with-mhash --with-openssl --with-readline --with-zlib --with-gdbm --with-pcre-regex=/usr --with-libzip=/usr --with-enchant=shared,/usr --with-pdo-sqlite=shared,/usr --with-sqlite3=shared,/usr --with-freetype-dir=/usr --with-pdo-mysql=shared,mysqlnd --with-mysqli=shared,mysqlnd --with-mysql-sock=/run/mysqld/mysqld.sock
# make

make の途中、libharfbuzz.la や libgraphite2.la がないといって止まってしまいましたので、よくわからないままに、/var/local/la-files/ にあった libharfbuzz.la 等を /usr/lib/ にコピーして make しましたら最後まで通りました。

Build complete.
Don't forget to run 'make test'.


# make install

# make test は例によって途中で止まってしまいますが、構わずインストールしてみました。

(参照)【Plamo6.1】PHPをソースから再インストール

インストール完了ですが、ソースからインストールしますと httpd.conf に

#LoadModule php7_module        lib/httpd/modules/libphp7.so

を追加するようです。すでに Include /etc/httpd/extra/php7.conf で読み込んでいますのでコメントアウトします。

Webサーバを再起動し、php の組み込みを確認し php.ini を編集しようとしましたら、php.ini どころか、php.ini.dist もありません。こういうものでしたっけ?

結局、Plamo のパッケージから php.ini を /etc/php にコピーし、

extension_dir = "/usr/lib/php/20180731-zts"
extension=pdo_mysql
extension=mysqli

を追加、またはコメントアウトします。拡張モジュールのディレクトリ名は 20180731-zts となっていました。ついでに mysqli も組み込んでみました。

で、Webサーバーを再起動しましたら、無事、pdo_mysql.so, mysqli が読み込まれ、php からの接続テストも無事通りました。

02phpMyAdmin が立ち上がらない

LAMP環境が構築できましたので、まずは phpMyAdmin を入れてみたのですが、まったく立ち上がりません。

原因を調べる時間がなく、あるいは LAMP環境が整っていないのかと、とりあえずコマンドラインからユーザとデータベースを作成し、Joomla を入れてみることにしました。

03Joomla3.9.8 を入れてみる

$ mysql -u root -p


# で mysql に入り mysql のコマンドラインになるので


mysql > create database データベース名;


# でデータベースを作り


mysql > create user `ユーザ名`@`localhost` IDENTIFIED BY 'パスワード';


# でユーザーを作り


mysql > grant all privileges on データベース名.* to ユーザ名@localhost IDENTIFIED BY 'パスワード';


# で作成したデータベースにユーザの権限を与えます

で、Joomlaの最新バージョン 3.9.8 を入れてみました。

downloads.joomla.org

問題なくインストールできました。phpMyAdmin が立ち上がらないのはなぜなんでしょう? 次回調べてみましょう。