ads.txt ファイルが含まれていないサイトがあると警告がでたときの対処

ads.txt ファイルが含まれていないサイトがあると警告がでたときの対処

Google Adsense のアプリに

要注意 – ads.txt ファイルが含まれていないサイトがあります。
収益に重大な影響が出ないよう、この問題を今すぐ修正してください。

とのメッセージが届いたため

ads.txt wordpress
で検索し

ads.txtの設置方法と書き方→WordPressへ

を参考に設定

この ads.txt は
自分のサイトの広告枠は○○○という広告主に対して許可を与えています
というものらしい

wordpress の場合
自分でテキストファイルをつくって
それをアップすればOK

このテキスト作成にあたり
サイト運営者IDが必要

これは Adsense にログインして
アカウントをクリックすれば
サイト運営者IDが表示されているので
これをコピー

あとはテキストエディタで
ads.txt を作成

私の場合は
Ubuntu なので gedit を起動

google.com, pub-サイト運営者ID, DIRECT, f08c47fec0942fa0

として
ads.txt というファイル名で保存

あとはドメイン直下のディレクトリにこのファイルをアップロード

今回は
scp コマンドで転送してから移動

scp ads.txt ユーザ名@サーバIP:/home/ユーザ名/

で転送してから ssh でログイン

sudo cp ads.txt /var/www/html/wp.developapp.net/

でドメイン直下にコピー

これで対処完了したのであとは警告が消えるのを待つだけでOK

wordpress で数式を書けるプラグイン

wordpress で数式を書けるプラグイン

Paiza ラーニングで問題をとくには
アルゴリズムや数式などの理解が必要なため
今後、数学の復習をすることに

備忘録として wordpress に書いていくときに
数式を記述するときに便利なプラグインがないかと
検索したところ

WordPressで 数式 を書いてみる − Mathjax Latexを使う


便利なプラグインがあるようなので
これを使うことに

インストール方法は
ダッシュボードで
プラグイン > 新規追加
Mathjax Latex
で検索し

今すぐインストール
をクリック

インストールしたら有効化を忘れずに

数式の書き方に関しては
Easy Copy MathJax

を参考に

[mathjax]
$$数式$$

というように

[mathjax]
というショートコードを記述し
数式を $$ ではさんで記述すると表示されるようになります

もし、表示されない場合は
設定 > MathJax-Latex で
Force Load にチェックをいれてみましょう

wordpress でメディアのアップロードができないときの対処

wordpress でメディアのアップロードができないときの対処

投稿で画像を挿入するため
ファイルをアップロードしようとしたら

Unable to create directory wp-content/uploads/2018/12. Is its parent directory writable by the server?

となってしまい
ファイルのアップロードができない状況に

wordpressの画像アップロードできないを
解決する方法としては
権限変更以外だと

【WordPress】画像がアップロードできない場合はプラグインを疑え!
にあるように
EWWW Image Optimizerプラグインの停止
もしくは
WordPressで画像ファイルがアップロードエラーする場合の2つの解決法

にあるように
キャッシュの削除

そして
WordPress : Permissionがあっているのに画像をアップロード出来ない件 heteml

にあるように
ファイルアップロードパスが合ってない

ということになるらしい

最初によくでてくるパーミッションの変更で
[WordPress]画像アップロードエラー「web-content/uploads/に移動できませんでした」+「ファイルサイズ0KB」の対処法

であるように

web-content/uploads
の権限を 755 などに変更してダメで

ファイルアップロードのサイズに関しても問題なし

Webサーバの空き容量に関しては
50GBあるため、こちらも該当せず

このため
EWWW Image Optimizer 関連から調べることに

メディアを調べてみると
Change the Media Library to List mode for additional image optimization information and actions
と表示されていたため

まずはプラグインの停止をしてみたけど
結果は変わらず

いろいろ試した結果
WordPressの理想的なパーミッション設定は?権限を見直してセキュリティ強化しよう
を参考に
wordpress のディレクトリに移動して

chmod -R 707 wp-content/uploads/

で権限を変更するとアップロードすることができるようになりました

wordpress プラグイン適用その2

wordpress プラグイン適用その2

画像圧縮プラグインは導入できたので
引き続き必要になりそうなプラグインをいれることに

ブログの趣旨としては
いろいろ実践したものを書いていきたいので
必要となるものは
画像圧縮
ソースコードの表示
Google Adsense の表示
スマホ対応
ぐらい

あとは購入してよかったものを
Amazon とかアフィリエイトで紹介するのは
そのままコードを貼り付けでできるので

今回は
スマホ対応にするために
WPTouch をインストール

Plugins > Add New で WPtouch で検索し
Install Now をクリック後 Activate をクリック

これでスマホ対応ができたので

次にソースコードの表示のためのプラグインをインストール

Plugins > Add New で
SyntaxHighlighter Evolved で検索し
Install Now をクリック

インストール後は Activate を忘れずに

AdSense Manager はすでに古いらしく
AdSense Managerはもう使えない?代わりのプラグインは?

によれば最終更新は5年前とのこと

また最近では Google Adsense で自動広告が使えるようになり
これを機に別のものを使うことに

WordPressでGoogle AdSense 自動広告を設定する方法

を参考に
Ad Inserterプラグインをインストール

ダッシュボードにログインして
Plugin > Add New で
Ad Inserter で検索し Install Now をクリック

インストールすると
Install Now が Activate になるので
これをクリック

エラーが表示されますが、気にせず次の操作へ進みます

次に設定をするので
Plugin > Installed Plugins で
Ad Inserter の Settings をクリック

次に Adsense にログインし
広告 > 自動広告

自動広告をクリックし
表示されたソースをコピーして

wordpress のダッシュボードで
Settings > Ad Inserter で

歯車アイコンをクリックして
Header をクリックし
ここへ貼付け後に
有効化アイコンをクリックし緑色になったら
Save Settings をクリックし設定を反映

これで自動広告が表示されるようになります

wordpress プラグイン適用

wordpress プラグイン適用

wordpress 引っ越しに伴い、適用するプラグインも変更

EWWW Image Optimizer
画像を自動圧縮するプラグイン
これを使えば過去にアップロードした画像も圧縮可能

Plugins > Add New
EWWW Image Optimizer
で検索し
Install Now をクリック

インストール後に Activate するのを忘れずに
使い方については
EWWW Image Optimizerの設定方法と使い方【2018年最新版】

を参考に

なお、最新版は英語

使用するには
PHPライブラリの GDと Imagick が必要なので

LaravelにImageMagick(最新版)をインストールして使用する

を参考にインストール

yum install https://rpmfind.net/linux/mageia/distrib/cauldron/x86_64/media/core/release/lib64openjp2_7-2.3.0-2.mga7.x86_64.rpm
yum install fftw3
yum install libXt
yum install libtool-ltdl

しかし

yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64/openjpeg2-devel-2.1.0-7.sdl7.x86_64.rpm

でエラーになるため

yumでPHP7をインストールする方法(CentOS7)

を参考に remi リポジトリでインストール

yum --enablerepo=remi-php71 install php php-cli php-devel php-common php-mbstring php-mysqlnd php-pear php-pecl-xdebug

このまま ImageMagick をインストールしても

ERROR: `/var/tmp/imagick/configure --with-php-config=/usr/bin/php-config --with-imagick=imagick' failed

となるので

PECL ImageMagick(PHP)インストール手順

を参考に

yum install ImageMagick-devel
yum install php-devel

で必要なライブラリをインストールしてから

pecl install imagick

を実行

途中で

Please provide the prefix of Imagemagick installation [autodetect] : 

とでるので

PHPでの画像処理【ImageMagick編】

を参考に
imagic
と入力

インストールが完了したら

Build process completed successfully
Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
Installing '/usr/lib64/php/modules/imagick.so'
install ok: channel://pecl.php.net/imagick-3.4.3
configuration option "php_ini" is not set to php.ini location
You should add "extension=imagick.so" to php.ini

と表示されるので

vim /etc/php.ini

でファイルを開き
最終行に

extension=imagick.so

と追記

最後に設定反映のため

systemctl restart httpd

でApache を再起動します

これでページをリロードすると
EWWW Image OptimizerのConvert 機能が使えるので

Settings > EWWW Image Optimizer
Convert タグで
Hide Conversion Links
でチェックがついているのを確認し
Save Changes をクリック

設定ができたら
Media > Bulk Optimize

Scan for unoptimized images
をクリックすれば
最適化されていない画像のスキャンができます

スキャン完了後に Start optimizing をクリックすれば
最適化されます

wordpress ssl変換後のアフィリエイトコード変更

wordpress ssl変換後のアフィリエイトコード変更

wordpress 自体をSSL変換しても
アフィリエイトコードが https 対応していないと
セキュリティの警告がでます

まずは
https化(SSL変換)後のアフィリエイトコードの変更作業について

を参考に

まずは A8.net
A8の場合、2016年7月26日に既に各アフィリエイトコードは全てhttps化に対応
とのこと

ただしそれ以前は http なので
これを書き換える必要がありそう

まずはA8.net にログインして
登録情報 > サイト情報の登録、修正
をクリック

修正したいサイトで修正をクリックし
URLの部分を https に変更

ダッシュボードにログインして
Tools > Seach Regex

Seach pattern に
a8.net

Seach して
リストアップされた記事の edit をみて
新しいバナーに張り替えていきます

注意点としては
wordpress のテンプレやサイドバーなどの
アフィリエイトコードも対象となっているので
この場合

英語テーマなら
Appearance > Customize

Widgets > Sidebar
として
Text の部分を編集することで
サイドバーのバナーの張替えが可能になります

できたら
Published をクリックすることで更新できます

なお、リンク切れのアフィリエイトコードは消しておきましょう

次に Amazon アソシエイトのURLも変更するので

SSL化httpsにしたらAmazonアソシエイトが表示されない対処法

を参考に

Tools > Seach Regex で
Search pattern で
Seach して Replace & Save で保存

これでOK

wordpress の SSL 対応(Let’s Encript)

wordpress の SSL 対応(Let’s Encript)

無事に wordpress を GMO クラウドから
ConoHa VPS に移行できたので
次に wordpress のSSL対応にします

ssh でログインしたら

su -

で管理者権限になり

使用するドメインは
wp.developapp.net
なので

/usr/local/certbot/certbot-auto certonly --webroot -w /var/www/html/wp.developapp.net -m メルアド-d wp.developapp.net --agree-tos

で証明書ファイルを発行

 vim /etc/httpd/conf.d/wp.developapp.net.conf 

で設定ファイルを開き

<VirtualHost *:443>
        ServerName wp.developapp.net:443
        DocumentRoot "/var/www/html/wp.developapp.net"
        ErrorLog logs/ssl-wp.developapp.net-error_log
        CustomLog logs/ssl-wp.developapp.net-access_log combined env=!no_log
        SSLCertificateFile /etc/letsencrypt/live/wp.developapp.net/cert.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/wp.developapp.net/privkey.pem       
        SSLCertificateChainFile /etc/letsencrypt/live/wp.developapp.net/chain.pem

        SSLProtocol all -SSLv2 -SSLv3
        SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
        SSLHonorCipherOrder on
        Header always set Strict-Transport-Security "max-age=15768000"
</VirtualHost>

を追記

なお、HTTPでアクセスしてきたものを HTTPS にするには

    RewriteEngine on
    RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]


80 番ポートのところに追記します

<VirtualHost *:80>
    ServerName wp.developapp.net
    DocumentRoot /var/www/html/wp.developapp.net
    ErrorLog logs/wp.developapp.net-error_log
    CustomLog logs/wp.developapp.net-access_log combined env=!no_log

    RewriteEngine on
    RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

</VirtualHost>

設定反映のため

systemctl restart httpd

で Webサーバを再起動

これで SSL対応はできるけど
これから書く記事に対してはOKだけど
過去記事に関しては
リンクが http のため
このままだと
一部は安全ではありません
と表示されることに

wordpress letsencrypt 一部安全ではありません
で検索し
WordPressサイトをSSL化した時注意すること

を参考に

まず、ダッシュボードにログインし
Settings > general

WordPress Adress(URL)

Site Address(URL)
の部分の
http を https に変更

次に過去記事のメディアなどのURLの置き換え
これはプラグインのSearch Regexで可能なので

Plugin > AddNew

Search Regexで検索し
Activate で有効化

Tools > Search Regex

Search pattern に 
http://wp.developapp.net
というようにSSLする前のドメインを
Replace pattern には
https://wp.developapp.net/
というように SSL対応したあとのドメインを入力し
Seach をクリック

これで該当する部分がでるので
Replace & Save
で置き換えと保存

しかし、まだダメなので
アフィリエイトサイトの場合ASPのトラッキング用のリンクなどが
影響しているため、一度使用しているアフィリエイトのリンクを確認

これらのリンクに対しては今後対応することに

wordpress の引っ越し作業で画面真っ白の対処

wordpress の引っ越し作業で画面真っ白の対処

mysql データを MariaDB へインポートできたので
次にvirtualhost の設定

vim /etc/httpd/conf.d/wp.developapp.net.conf

というように
ドメイン名.conf
というファイルを作成

内容は

<VirtualHost *:80>
    ServerName wp.developapp.net
    DocumentRoot /var/www/html/wp.developapp.net
    ErrorLog logs/wp.developapp.net-error_log
    CustomLog logs/wp.developapp.net-access_log combined env=!no_log
</VirtualHost>

保存したら

systemctl restart httpd

で apache を再起動

しかし
お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。

と表示される

エラーで検索し
CentOS7 PHP7.1.2 お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。

を参考に

php -m | grep mysql

を実行しても何もでないので

yum install yum-utils
yum-config-manager --enable remi-php71
yum install php-mysqlnd

で必要なパッケージをインストール後

php -m | grep mysql

を実行し

mysqli
mysqlnd
pdo_mysql

がでたのを確認したら

systemctl restart httpd

で apache を再起動したけどかわらず

おそらく wordpress のバージョンが古すぎることが原因

とりあえず

wget http://ja.wordpress.org/latest-ja.zip

で最新のwordpress をダウンロード

mv wordpress /var/www/html/wp.developapp.net
chown -R apache:apache /var/www/html/wp.developapp.net/
cd /var/www/html/wp.developapp.net/
cp wp-config-sample.php wp-config.php
vim wp-config.php
systemctl restart httpd

今度は
データベース接続確立エラーになった

ログインユーザに問題があるとおもい
wordpress ユーザで mysql でログインしようとしてもできないので
サーバー移動による hostname があやしいと思い

root で mysql にログインして調べたら

select host,user from mysql.user;

を実行すると
host が % になっている

念の為

 show variables like 'hostname';

で hostname もみてみたら
やはり違っている

このあたりから調べることに
Warning: mysqli_real_connect(): (HY000/1045): Access denied for user ‘snowpool’@’localhost’ (using password: YES) in /var/www/html/wp.developapp.net/wp-includes/wp-db.php on line 1531

つまり ユーザに問題がありそう

MariaDB(MySQL)の基本的なユーザー系コマンド

で調べ

SELECT user,host FROM mysql.user;

でユーザ一覧をみたら

ユーザは存在しているけど
root 以外は

SHOW GRANTS FOR ''@'hostname';

で権限を確認しても

ERROR 1141 (42000): There is no such grant defined for user 'snowpool' on host 'hostname'

となるし

ログインしようとしても

ERROR 1045 (28000): Access denied for user 'snowpool'@'localhost' (using password: YES)

となってしまう

Hostを指定しないで作ったuser1はHostが「%」になっているので
とあるので
https://teratail.com/questions/45324

MySQLの権限の確認や外部からのアクセス

に権限について載っているのをみると

どうやら、host の指定をしていないのが原因っぽい

とりあえず権限の確認

show grants;

で現在のユーザの権限が確認できる

root ユーザに関してはログインしてコマンド実行することでみれたけど
wordpress のユーザはログインすることができかったため

DBの破損の確認をしたいので

テーブルが壊れているかと思ったので、mysqlcheckで修復したときのメモ

を参考に

mysqlcheck -c -u root -p --all-databases

を行ったところ
すべてOKで破損はなし

SELECT user,host FROM mysql.user;

でユーザ一覧をだしてみたけど
host が % になっているのでたぶんこれが原因っぽい

一度、移行前のサーバーへ ssh ログインし

show grants for 'snowpool'@'%';

では権限確認できるのに対し

インポート先の MariaDBで

show grants for 'snowpool'@'%';

だと

ERROR 1141 (42000): There is no such grant defined for user 'snowpool' on host '%'

となる

MySQL] MySQL5でHostに’%’があるとリモート接続できない?

によれば
host に % にするのは mysql のワイルドカードで
どこからの接続でも許可するというもの

今使っているDBが MariaDB
最初は権限やセキュリティの仕様が違うのかとおもったけど
マシンのホスト名やOSが違うため

slaveの再設定、追加(オンラインバックアップ)

をみてみたら

別サーバーで、レプリケーションが行われているmysqlからダンプして
フルバックアップファイルを利用して、slaveを設定しなおす場合に、
mysqlの接続アカウント情報も書き変わってしまう。

そのため、元々masterに設定されていた接続アカウントと
ダンプファイルのアカウント情報が違う場合には、アカウント情報を再設定してあげる必要がある。

とのこと

ということで再度アカウントを別のもので作成して実験

grant all privileges on wp_my_wordpress* to snowpool@localhost identified by "password";

これで wp-config.php の設定を変更したけど画面が真っ白

念の為

mysqldump -u root -p wp_my_wordpress > wordpress.sql

でバックアップを作成しておく

なお復旧させるときには

create database wordpress;

で新規作成

 mysql -u root -p wordpress < wordpress.sql 

でインポートすれば復旧可能

 mysqlcheck -c wordpress -u root -p

で破損をチェックしOKを確認するのも忘れずに

なお、画面が真っ白になった原因は
最新のwordpress にした場合、該当するテーマがないため
wp-config.php での設定をせず
ドメインにアクセスし、ブラウザからインストールし
ダッシュボードへログインしてテーマ設定をすれば
wordpress の表示がされるようになります

conoha vps で wordpress の構築

conoha vps で wordpress の構築

GMOクラウドで wordpress を運用していましたが
料金を抑え、さらにSSDで早いと聞いた
ConoHa で wordpress を運用するようにします

CentOS7 複数ドメイン(バーチャルホスト)でSSL

を参考に構築を行います

なお、初期設定については
ConohaサーバーへWordPressをインストールするまでの全行程(1)Conohaサーバーの立ち上げ

を参考に

ちなみに、アカウントと root パスワードは決めたものの
root パスワードを忘れ
ログインできない状態になり
https://www.conoha.jp/faq/troubleshooting/
で調べたけど
rootパスワードやVPS内で作成したアカウント情報ついて弊社側では確認ができません。サーバー再構築やシングルユーザモード・レスキューモードにてパスワードの再設定をご検討ください
とのことなので

ConoHa さくら VPSでのrootパスワード再設定

を参考に実践

Conoha にログインし
仮想サーバを選択して
コンソールをクリック

次に
特殊キーで ctrl + alt + delete をクリック
再起動するので
キーボードの上下キーをおすとカーネル選択画面になるので
一番上を選んで e をクリック

すると編集モードになるが、編集するべき場所がみつからないので

一度削除し再度作成

Conoha コンソールでIPアドレスを確認し

ssh root@IPアドレス

でログイン

次にアップデート

yum -y update

次に一般ユーザの設定

ConohaサーバーへWordPressをインストールするまでの全行程(2)サーバーのセキュリティを強化する

を参考に実践

useradd ユーザ名

で一般ユーザを追加し

passwd ユーザ名

で一般ユーザにパスワードを付与

 usermod -G wheel  ユーザ名

でユーザを wheel グループに追加

なお、セキュリティに関してはポート変更よりも

ConohaサーバーへWordPressをインストールするまでの全行程(5)SSH接続を公開鍵認証で行う

を参考に公開鍵認証に変更します

なお、新規にサーバを選ぶときには
https://www.conoha.jp/guide/vps_sshkey.php
にあるように公開鍵認証を設定できるようです

一度ログアウトし
作成した一般ユーザで ssh でログインします
[shel]
ssh 一般ユーザ名@IPアドレス
[/shell]

ログインできたら

ssh-keygen -t rsa

で鍵を作成

id_rsa.pubのファイル名をauthorized_keysに変更するので

cd .ssh/
mv id_rsa.pub authorized_keys

次に権限の変更

sudo chmod 700 ../.ssh/
 sudo chmod 600 ../.ssh/authorized_keys 

次に scp コマンドで秘密鍵をローカルへ移動します
一度ログアウトして
ubuntu 側で

scp 一般ユーザ名@IPアドレス:/home/一般ユーザ名/.ssh/id_rsa /home/自分のユーザ名/.ssh/

これで再度 sshで接続すると
今度はパスワードを入力することなくログインできるようになります

次にせっかく公開鍵認証にしたのでパスワードによるログインは禁止します

sudo vim /etc/ssh/sshd_config 

でファイルを開き

38行目の

PermitRootLogin yes

PermitRootLogin no

としてRootログインを拒否

63行目の

PasswordAuthentication yes

PasswordAuthentication no

へ変更してパスワード認証を拒否

なお
RSAAuthentication の項目がみあたらないので調べたら
sshd_config に RSAAuthentication no を設定する必要はもうない

にあるように設定は不要のようです

Conoha の一般ユーザーで公開鍵認証を使用してSSHログインする

でもこの部分はなくなっていました

あとは

sudo systemctl restart sshd.service 

でサービスを再起動して変更を反映しておきます

次にファイアウォールの設定
https と http を開いておくので

sudo firewall-cmd --add-service=http
sudo firewall-cmd --add-service=https

次に再起動してもそのままの設定になるように

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

次に
ConohaサーバーへWordPressをインストールするまでの全行程(3)Apache MariaDB PHP7のインストール

を参考に
PHP7 のインストール

まず Remi リポジトリの追加

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

リポジトリ追加の確認は

 ls -l /etc/yum.repos.d/

で確認可能

次に PHP7 のインストール

sudo yum install --enablerepo=remi-php71,remi-safe php p
hp-mbstring php-pear php-mysql php-mcrypt php-gd

これで依存関係で Apache もインストールされます

PHPのヴァージョン確認は

php --version

次に MariaDB のインストール

 sudo yum -y install mariadb mariadb-server

そして MariaDB の起動

systemctl start mariadb.service

起動確認には

sudo systemctl list-units | grep mariadb

次に再起動したときにも自動起動するように設定

systemctl enable mariadb.service 

実行するとユーザパスワードを求められるので入力

登録状態の確認には

systemctl list-unit-files | grep mariadb

次にMariaDB の初期設定

 mysql_secure_installation 

実行するとセキュリティ設定でいくつか質問がでてきます

Enter current password for root (enter for none):
では Enter を押します

Set root password? [Y/n]
で root パスワードを設定するか聞かれるので y

New password:
で新しいパスワードを設定

Re-enter new password:
で確認のためもう一回入力

Remove anonymous users? [Y/n]
では匿名ユーザを削除するか なので y

Disallow root login remotely? [Y/n]
で root をリモートでログインを禁止するかなので y

Remove test database and access to it? [Y/n]
でテストDB削除なので y

Reload privilege tables now? [Y/n]
でテーブルの再読み込みするかなので y

これで設定完了

次に MariaDB を再起動することで設定を反映

systemctl restart mariadb

参考サイトでは wordpress 用DB作成しているけど
別サイトから引っ越しするので
これは保留し
Apache 関連の設定

最初に Apache の起動

systemctl start httpd.service 

起動しているかを確認

systemctl list-units | grep httpd

次に再起動してもApache が起動するよう設定

systemctl enable httpd.service 

設定の確認には

systemctl list-unit-files | grep httpd

次に Apache の設定

CentOS7 複数ドメイン(バーチャルホスト)でSSL

を参考に

ラズパイ3へ wordpress 設定

ラズパイ3へ wordpress 設定

以前 Ubuntu14.04 へ wordpress を設置し
EPUBを kindle 本に変換したので
今回は ラズパイ3で実践するために
まずは wordpress を設定

参考サイトは

Raspbian Stretchでサーバー構築! PHP7.0 Apache2 / インストール編

これは検索すると php5 が多かったので
wordpress ラズパイ3 php7
で検索しました

まず php7と phpの mysql接続モジュールインストール

sudo apt install php7.0 php7.0-mysql

次に apache2 と php接続モジュールをインストール

sudo apt install apache2 apache2-mod-php7.0

ここからは
Raspberry Pi 3 に WordPress をインストール

を参考に設定しようとして

sudo apt-get -y install mysql-server php7.1-mysql

としたけど

E: パッケージ php7.1-mysql が見つかりません
E: 'php7.1-mysql' に一致するパッケージは見つかりませんでした
E: 正規表現 'php7.1-mysql' ではパッケージは見つかりませんでした

となってしまうため、よくみたらOSバージョンが違っていたので

Raspbian Lite (Stretch)にWordPressを設定してみました

を参考に設定

sudo apt install php7.0 php7.0-fpm php7.0-mysql php7.0-mbstring php7.0-xml php7.0-gd php7.0-curl libapache2-mod-php

で必要なパッケージをインストール

今回はDBとして mariaDBをインストール

sudo apt install mariadb-server

MariaDB の場合rootだけアクセス可能ということで
sudo をつけて 実行しないとダメ

sudo mysql -u root -p

として
pi ユーザのパスワードを入力
デフォルトなら raspberry

MariaDB [(none)]> 

というようになったら

create database wordpress;

でDB作成

grant all privileges on wordpress.* to 'wpadmin'@'localhost' identified by 'password';

として
ユーザ名とパスワードを設定

exit

でDBコンソールから抜けます

次に wordpress 最新版のダウンロード

wget https://ja.wordpress.org/latest-ja.tar.gz

次に tar コマンドで解凍

tar zxvf latest-ja.tar.gz

これで wordpress というフォルダが作成されます

次に設定ファイルの作成

cd wordpress/
cp wp-config-sample.php wp-config.php 
chmod 600 wp-config.php 

これで
wp-config-sample.php から
wp-config.php を作成し
ファイル権限を chmod コマンドで変更しています

Linux の権限については
<a href="https://qiita.com/shisama/items/5f4c4fa768642aad9e06" title="https://qiita.com/shisama/items/5f4c4fa768642aad9e06" target="_blank">Linuxの権限確認と変更(超初心者向け)</a>
を参考に


次にファイルの編集

vim wp-config.php 

でファイルを開いて

29行目の

define('DB_NAME', 'database_name_here');


データベース名にするので

define('DB_NAME', 'wordpress');

へ変更

32行目の

define('DB_USER', 'username_here');


データベースユーザ名にするので

define('DB_USER', '');

へ変更

35行目の

define('DB_PASSWORD', 'password_here');


データベースユーザのパスワードにするので

define('DB_PASSWORD', 'password');

へ変更

ここまでできたら保存し

cd ..

で1つ上のディレクトリに移動

sudo mv wordpress/ /var/www/html/

でwordpress ディレクトリを公開ディレクトリに移動

sudo chown -R www-data:www-data /var/www/html/wordpress

でユーザとグループを www-data へ変更

ここまでできたらブラウザで
ラズパイのIP/wordpress
へアクセスするとインストール画面になるので
サイト名
ユーザ名
メールアドレスを入力
ちなみにパスワードは自動生成してくれます

piwp

今回は
サイト名 ランチマップ
ユーザ名 Snowpool
パスワード Zh61C!CLKLUQz3y8EA
としてあとは自分のメルアドをいれました

今後は
ランチマップのkindle 本を作成していきたいので
PriPreプラグインをいれておき
ある程度ページができたら
投稿記事をEPUBにした後に
Amazon が提供する kindlegen を使って
kindle対応ファイルに変換して出版していきます

piwp2