arcanum_jp’s blog

おっさんの日記

フルートで吹いてみました。旅立ちの日に

 

www.youtube.com

 

ユーチューブでよく吹いてみた系の動画をみるのですが、みていると自分も吹いてみたくなるじゃないですか、それで吹いてみました。

 

今回公開するまでに色々と紆余曲折があって、色々練習して録音してはこれは下手だとか色々理由をつけては放っておいたのですがまずは下手でも公開してみないと始まらない!と思い、今のままでの公開です。実は自分でも公開してみたいと思い出して練習場所借りて練習してと言うのを続けて2年かかってしまいました

 

吹いている時は楽しい!って思っても聴いてみるともっと伸ばせ!そこビブラートだろ!ビブラート自信ねぇな!とか色々ツッコミ所満載ですね。公開して後悔するかも・・・

 

でもやっぱり楽器楽しいですね。

 

 

スプラトゥーン小説2

こちらの続きではありません。

 

arcanum.hatenablog.com

 

アタリメ爺さんは続けた

 

あのな、、TV中継されている試合中のイカ、インクでキルされるじゃろ?あれ、どうなると思う?

 

寂しい廃線の駅を通りかかったときにその爺さんと会った。そこで今日のスプラの試合が楽しみな事を話したのだ。

 

え?キルされたらリスポーン地点に戻るんじゃ?

 

違うんじゃよ、死ぬんじゃよ・・・

 

えーーーキルされたら死ぬのあたり前じゃん!やだなーーそしてリスポーン地点に戻るんだよ爺さん!

 

ワシが若い頃働いていた場所が試合を管理する場所でな、試合には8人出る。8人は試合開始前に会場近くの部屋に移動させられるんじゃ。

 

え?会場にいくんじゃないの?

 

そしてな、試合自体はモニター越しに行うんじゃよ。VR機器を体につけて。

 

試合が開始されるとな、イカがそこに転送されるんじゃ。試合をする人たちと同じ格好をしたイカが。そして試合が始まるとな、試合会場のイカはさっきの部屋にいるイカが操る。

 

ワシらイカは以心伝心と言うか、、、テレパシーみたいなもんがあるじゃろ。ほら、、フレンドが遊び始めるとなぜかピーンっとくるじゃろ?頭の左上?あたりにフレンドが来た!って感じるのじゃ。あの仕組みを使っているらしい。

 

部屋で操作したのが電波を使って会場のイカを操るのじゃ。

 

え?それじゃあの会場にいるイカは?聞いているイカは青くなり始めた。

 

あのイカたちはな、卵からかえったイカたちじゃ。まぁ我らイカは1回の産卵で卵は2000個ほど産む。多少なくなったって誰もわかりはしない。そう言うイカたちが暗室で育てられ、試合の時に転送される。転送されてキルされるまでの数分、短い奴じゃリスポーン地点でキルされる・・・が彼らが見る世界じゃ。と言っても体の自由は効かぬが・・・

 

自動で体が動く、武器を操る。出たインクで目の前のイカが死んでいく。多分自分の境遇から同じイカだと感じるだろう。自分がやっている事なのか?そして自分も相手のイカに攻撃される。キルされる瞬間まで、、数分間の恐怖を味わう。

 

さっき我らイカにはテレパシーがあるって言ったじゃろ?そりゃもう会場は5分間、恐怖と怒り、悲しみの負の感情でいっぱいになる。頭にガンガン回ってくるのじゃよ。ワシらは始めは眠れぬ日々が続くのじゃが、、だんだんと、、慣れる。

 

もともとこのゲームは金持ち貴族たちの遊びじゃ。彼らはイカたちを消費し、そして楽しむ。みている連中も楽しいだろう。エンタメという奴じゃよ。もっと楽しみたいがために試合をTVで見せるようになった。

 

おっと、、誰かが来たようだ、、そう言い、アタリメ爺さんは杖でヨタヨタと去っていった・・・

 

今日聞いた事は本当の事だろうか、、、イカたちは顔を見合わせた。いやいや、、爺さんの世迷いごとだろう。あんなヨボヨボの爺さんが試合に関わっているはずはない。今日は月イチのリグマの日だ。観戦のためフライドチキンをたくさん買って帰るところであった。人が楽しんでるのを妬んでるのさ。

 

 

 

 

 

 

 

 

震える舌、視聴。そんじょそこらのホラーより怖い破傷風

 

 

子供が今回の水害でボランティアで後片付けか、、以前だったらほっこりニュースなんだけど、Twitterが騒がしい。どうやら破傷風の危険があるにも関わらず子供にさせるべきではない、というもの。その中で「震える舌」という言及がちらほら・・・なんだろ?震える舌

 

 

震える舌」でTwitter検索

https://twitter.com/search?q=%E9%9C%87%E3%81%88%E3%82%8B%E8%88%8C&src=typed_query

 

こんな感じ。自分はこの映画は知らなかったのですが興味が出てきて鑑賞してみました。

 

2週間以上も休んでいるとみられるお父さんの同僚、ほんと優しいなぁ、、蟹江敬三さん、若いなぁ、、主人公のお母さんが孫に見せる優しさとかね、あぁ、あなた、、10年後に「メイちゃ〜ん!」って叫ぶよ!とか。もっと言うと、主人公の渡瀬恒彦さん、李元昊しか思い浮かばねぇ!そう言えば最近十朱幸代さん最近見ないなぁ・・・色々ショーワを感じながら見てた。

 

いや、劇中、そんじょそこらのホラーよりも怖いですよ。破傷風そのものの描写とそれと戦うお医者さん、もうね、映画なので誇張表現はあれど、見ていて辛くなりました。

 

中野良子さんが控えめな演技で素晴らしい怖さを見せてくれます。笑顔でね、感情がないの。これは対応されたら怖い。ただその無感情と言うのはジョジョのフィアンセであるエリナがスピードワゴンに見せたあれと同じだと思うとまたそれは凄いと思うのです。

 

 

Wikipediaから「震える舌

https://twitter.com/search?q=%E9%9C%87%E3%81%88%E3%82%8B%E8%88%8C&src=typed_query

 

映画は医療ドラマというよりも、オカルト・ホラー的趣向で製作された[1][2]。予告編での惹句も、「新しい恐怖映画」と銘打たれている。

破傷風に侵されてしまう少女・昌子を演じる若命真裕子の迫真の演技が話題となった

 

 

自分がホラーより怖いと感じたように、Wikipediaやら色々なサイトで指摘されている通り恐怖映画の趣で制作されたとのこと。あのね、表現がね、血がでるシーンは生々しく、楳図かずお的な恐ろしさなの。

 

劇中で描かれるが、破傷風は舌を噛んで出血したり痙攣が起きると背骨が折れるぐらいのこわばりになると言う。実際劇中でも舌を噛むシーンがありこれがホラー顔負けで怖かったのである。また、病原体の毒素の作用する範囲は筋肉にとどまり、患者は意識混濁することなく、絶命に至るまで症状に苦しめられる。

 

致死率は50%、劇中では発病五日以内では全例死亡、もうこの時点で物語の昌子の運命はほぼ決まってしまったのである。劇中ではそんなに見えなかったが昌子は10日以上も意識が混濁することなく苦しめられていたということ。

 

恐ろしい!

 

正直ね、こんな恐ろしい病気にかかる可能性がある、と言うのがわからずに子供に作業を命じるってのはほんと責任重大だよねと。多分だけど、破傷風なんて普段は聞かないような病気で知らなかったって可能性もあったんだろうけど。逆に清浄になった上で知識がなくなるってのも怖いよね。

 

世界は危険と隣り合わせであるが、医療の充実がそれを覆い隠していると言う感じなのだろうか。初めの熊本のボランティアでは中学生とあり、破傷風を含む2種混合ワクチンは打っていると思われるので、もしかしたら大丈夫だったのかもしれない。

 

いやそれ言ったら風疹ワクチンの期限がきれた、摂取していない世代のオッサンがそこらじゅう仕事でアクセク歩いているわけだからそっちも怖いよ!とか10万個の子宮で指摘されたようにワクチンが積極的に摂取されないおかげで将来の女性の死亡率が上がるとか色々ってなるんだけれども。

 

しかしよくよく見ているとその中に色々と今に通じるものが見えてくる。劇中破傷風にかかってしまった昌子の両親は病院に寝泊まりするのだけれど、当然ながら2人とも休むことのできずに自滅していくのね。

 

最後には昌子に噛まれた後や接触から自分も破傷風ではないか?と疑問に思い、死ぬことまでも覚悟する。疲れによる、怒り、疑惑、鬱、恐怖、こだわり、嫉妬、、、悪い兆候のオンパレードだなぁと。

 

この作品が発表された1980年と言うのは、以前自分が読んだ「日本史リブレット 江戸時代の老いと看取り」と言う本でも指摘されていたように、日本が国連の定義する高齢化社会に突入しているけど社会全体がそれを表立って認識していない時期で介護に対して未分化な時期。

 

arcanum.hatenablog.com

 

この時期の日本の家庭像なら父親は仕事に行き、お母さんが病院に寝泊まりして疲労がたまっていく。一人に負担がかかっていくという構図なんだろうけど劇中では2人とも寝泊まりしていた。劇中で語られるのは1ヶ月。現実では1ヶ月も2人とも仕事ほったらかして看病できるわけないだろうが!!

 

あぁ、これはダメなパターンや、、父親の介護で自分もいくつか経験したが介護は家族の消耗戦。最後にお父さんに言わせるんだけど、一人が看ている時は一人は休むと言うことを提案する。80年代にこれが言えた家庭というのはどれぐらいあったのだろう。

 

 しかし一番怖いなと感じたのはね、劇中初めの方で破傷風と診断されるまで。映画は破傷風の話だから昌子が破傷風と診断されるのだろう、、大変致死率も高い病気と聞いているから時間との勝負だしすぐ判断されるのだろうなと、、

 

と思うのだが、3日とも医者に行っても診断されず、1度目の痙攣で舌を噛み病院に搬送される。大きい病院でも心因性と判断、最後の最後に破傷風とわかる。もうね、、こんなにすり抜けるもんなの?って思うわけよ。

 

さて、ツラツラ書いてみたけど、現代では忘れさられそうになっている破傷風、その怖さを知るためにもこの映画は見ておいた方がいいね。不幸中の幸いというか、他人のなにげなくやらかした失敗によって有効な知識を得た感じがした。

 

昌子の最後はどうなったのでしょう。致死率の高さを誇る破傷風、昌子は死んでバッドエンドなのだろうか?実は治ってハッピーエンドなのだろうか?2人の絶望の表情は忘れられない。

 

ubuntuにTomcatをインストールする

これの続きです。

arcanum.hatenablog.com


現状自分のサーバーはTomcat一本で全部受けています。今後CMS部分はWordpressが受けるとなるとこんな感じに、httpsまたはhttpはWordpressで受けて背後にTomcatがいる構成を目指します。またDBはそのうちWordpressの制限でMySQLに変更するかどうかはまた別の話。

現状

ブラウザ → JakartaAPサーバー → Java製のアプリ ーー PostgreSQL


未来のいつか

ブラウザ → Nginx → JakartaAPサーバー → Java製のアプリ ーー PostgreSQL
        ↓
      Wordpress
        |
       MySQL

今回はまずAPサーバーとして使い慣れたTomcatのインストール。こちらを参考にさせていただきました。また上で示したリンクの続きなので以下はDockerのコンテナに入って実行になります。あと適宜必要なのはapt install してください。


www.codeflow.site

インストール

エントリではJDKをインストールしてますが、JREをインストールします。

apt install default-jre


Tomcatのグループを作ります。

groupadd tomcat


先ほど作成したtomcatグループに属するログイン不可のtomcatユーザーを作ります。

useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat


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

cd /tmp
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.36/bin/apache-tomcat-9.0.36.tar.gz  --no-check-certificate
mkdir /opt/tomcat
tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
chgrp -R tomcat /opt/tomcat
chown -R tomcat /opt/tomcat/webapps/ /opt/tomcat/work/ /opt/tomcat/temp/ /opt/tomcat/logs/


エントリではサービス化してというのが中盤からありますが、自分の環境、なぜかsystemctlが動かなくて困ったのでとりあえず以下のように直接起動しました。

/opt/tomcat/bin/startup.sh


あとはlocalhost:8080にブラウザで接続してTomcatの画面が出たらOKです。


f:id:arcanum_jp:20200627112720p:plain

Dockerで1コンテナで作成したワードプレス環境をdocker-composeでまとめる

ここからの続き。

Nginxを使ってみる。PHPの設定、Dockerベース - arcanum_jp’s blog


そうだ、ワードプレスを入れてみよう! - arcanum_jp’s blog


Dockerのコマンドベースで作成したワードプレス環境ですが、コンテナをうっかりdocker rm xxxなんてした日には泣いてしまうので、いつでも簡単にdocker-compose up -d --buildで作成できるようにまとめます。まとめたソースはこちらです。忙しい人向け

github.com


ギッハブ見れば別にもう明らかなんですけど、とりあえず下記で書いてみます。

ディレクトリ構成

単純にこんな感じですdocker-composeからDockerfileを実行し、CMDの内容をentrypoint.shの実行で書き換えます。entrypoint.sh内部ではinit.dbで必要なデータベースの作成などを行い、サービスを再起動します。そんな感じの流れです。コンテナがUPした状態でhttp://localhost:8080/ にアクセスするとワードプレスのサイト設定画面が表示されるまでを目指します。

[compose_wordpress]
  +ーー docker-compose.yml
  +ーー Dockerfile
  +ーー entrypoint.sh
  +ーー initdb.sql
  +ーー wp-config.php
  +ーー www.conf

docker-compose.yml

wordpressと言うコンテナ名で内容はDockerfileにまとめています。ポートはローカルの8080番ポートをコンテナの80番ポートにフォワードします。

version: '2'

services:
  wordpress:
    
    build:
      context: .
      dockerfile: Dockerfile
    
    ports:
      - "8080:80"

    #restart: always

Dockerfile

必要なものをインストールしてentrypoint.shを実行するのに必要なものをコピーしたりなんだり・・・特に特筆すべきものはありませんが ENV DEBIAN_FRONTEND noninteractive
は apt install xxxx する際にインタラクティブに聞いてくるアレ[Y/n]ですね、それを無視するオプションみたいです。

あ、apt install vimは不要ですね。これは単に確認する用に入れただけです。

FROM ubuntu

ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        nginx \
        mysql-server \
        php-fpm \
        wget \
        unzip \
        php-mysql

RUN apt-get install -y vim


WORKDIR /var/www


# MySQL
COPY ./initdb.sql ./initdb.sql


# Nginx
COPY ./www.conf /etc/nginx/sites-enabled/default


# ワードプレスのファイルを配置しておく
RUN wget https://ja.wordpress.org/wordpress-5.4.1-ja.zip  --no-check-certificate
RUN unzip -q wordpress-5.4.1-ja.zip
RUN mv ./wordpress/* ./html
#RUN rm wordpress-5.4.1-ja.zip
#RUN rm -r ./wordpress
COPY ./wp-config.php ./html/wp-config.php

# その他Dockerfile後実行したい処理
COPY ./entrypoint.sh ./entrypoint.sh
RUN chmod +x ./entrypoint.sh
CMD ./entrypoint.sh
 

EXPOSE 80

entrypoint.sh

MySQLサービス、PHP-FPMサービスをバックグラウンドで起動後、Nginxをフォアグラウンドで起動します。"daemon off;"とうところですね。通常はバックグラウンド起動のところ、このオプションでフォアグラウンドにしています。これはdocker-compose でコンテナを起動すると通常処理が終了後にコンテナはExit状態となります。docker-composeはDockerのイメージを作るためのコマンドなのでこれはこれで正しいのですが、目的はワードプレスが使える環境なのでSTATUSがUPとなっている必要があります。そのため何かしらフォアグラウンドで実行状態が維持され、Exitにならないようにする必要があり、Nginxはフォアグラウンドで起動するようにしています。

set -e


service mysql start
mysql < initdb.sql


/etc/init.d/php7.4-fpm start

echo "daemon off;" >> /etc/nginx/nginx.conf
service nginx start

initdb.sql

MySQLワードプレス用のDB、ユーザーを生成しています。

create database wordpress;
create user wpadmin@localhost identified by 'password';
grant all on wordpress.* to wpadmin@localhost;

www.conf

長いのでコメントなどを削除して必要な部分のみにしています。index.phpをウエルカムファイルとし、*.phpにアクセスされた場合にPHP-FPMに連携するようにしています。内容は前々回で見た /etc/nginx/sites-available/defaultのコメントアウトしたものです。

server {
        listen 80 default_server;
        listen [::]:80 default_server;

        root /var/www/html;

        # Add index.php to the list if you are using PHP
        index index.php index.html index.htm;

        server_name _;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }


        # pass PHP scripts to FastCGI server
        location ~ \.php$ {
               include snippets/fastcgi-php.conf;
               fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        }

}

wp-config.php

ワードプレスの設定です。ワードプレスのzipにあったwp-config.php.sampleから作りました。DB_NAME、DB_USER、DB_PASSWORDは先ほどinitdb.sqlで作成したものを指定します。AUTH_KEYから始まるハッシュ値はwp-config.php.sampleにあるとおり、以下のURLにアクセスすると取得できます。

https://api.wordpress.org/secret-key/1.1/salt/

  ・・・省略

// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'wordpress' );

/** MySQL データベースのユーザー名 */
define( 'DB_USER', 'wpadmin' );

/** MySQL データベースのパスワード */
define( 'DB_PASSWORD', 'password' );


  ・・・省略

define('AUTH_KEY',         'Lb?=PLpsQM-E.3yk0O-kM#Y]`}1+fIXY>}Xd>2{,aPfu%I+-WvI).9,qn{xc!/m7');
define('SECURE_AUTH_KEY',  '{6cO-^OzU~gR-M5dMM2&l <=}a5+Iu S)h]pJ1r*G!pP@s(,-I#^@ntXbh+]ZvMv');
define('LOGGED_IN_KEY',    'l6zkb9>.|U$2.5W_~FE/-$)qa0q0W>$oidd%l`<*p5J@tGX1{-L-Er8qT}W$SmoR');
define('NONCE_KEY',        'O<-5)qE-&Ff?p,s|w{}Lq}Uu!.S@n<-1zlw_Sa+mg]va1vzl]>M9U~h-G8}<uAWV');
define('AUTH_SALT',        'l-`tB%5v?dV|n>-=7]&E)HDtYc9VX?Gpz9LUdDg#dknUbZm+=eS,11xS-TdnP`>2');
define('SECURE_AUTH_SALT', 'nT86dN7y<UY95Q[J$qHvmD)F/;k52m3@*n4=*h%C-TD+KYu+1FcJ+n=dv9Tjd-fs');
define('LOGGED_IN_SALT',   ':X5IZL)B}^%p3-#G<hMR8qS{Nm^ful?{P],w3/P, B^oES~;Xu^;@C)U_T&*aZ-F');
define('NONCE_SALT',       '.f$Ra-@XnvGnu>$E8(,l<^{/?9ry,TMn30NZ+h5)DCx]_@1Ky7Za[OP5e3{yp66E');

  ・・・省略

起動

上記の内容でdocker-compose.ymlのあるディレクトリで以下のコマンドを打ちます。

docker-compose up -d --build

Building wordpress
Step 1/15 : FROM ubuntu
 ---> 1d622ef86b13
Step 2/15 : ENV DEBIAN_FRONTEND noninteractive
 ---> Using cache
 ---> b9041b34f8cf
Step 3/15 : RUN apt-get update &&     apt-get install -y --no-install-recommends         nginx         mysql-server         php-fpm         wget         unzip         php-mysql
 ---> Using cache
 ---> 4c461047a430
Step 4/15 : RUN apt-get install -y vim
 ---> Using cache
 ---> 1694ae6b157b
Step 5/15 : WORKDIR /var/www
 ---> Using cache
 ---> 00a9f8b7665c
Step 6/15 : COPY ./initdb.sql ./initdb.sql
 ---> Using cache
 ---> 6833c6890529
Step 7/15 : COPY ./www.conf /etc/nginx/sites-enabled/default
 ---> Using cache
 ---> 60cb5f6aa5a0
Step 8/15 : RUN wget https://ja.wordpress.org/wordpress-5.4.1-ja.zip  --no-check-certificate
 ---> Using cache
 ---> 2cc2a311e47c
Step 9/15 : RUN unzip -q wordpress-5.4.1-ja.zip
 ---> Using cache
 ---> 7bcfbcce0892
Step 10/15 : RUN mv ./wordpress/* ./html
 ---> Using cache
 ---> af4964fedf6b
Step 11/15 : COPY ./wp-config.php ./html/wp-config.php
 ---> Using cache
 ---> bec46dfbe0ae
Step 12/15 : COPY ./entrypoint.sh ./entrypoint.sh
 ---> Using cache
 ---> e3f2a9888c0f
Step 13/15 : RUN chmod +x ./entrypoint.sh
 ---> Using cache
 ---> f66f7d95a939
Step 14/15 : CMD ./entrypoint.sh
 ---> Using cache
 ---> d357d43918f9
Step 15/15 : EXPOSE 80
 ---> Using cache
 ---> c9b258db64f2
Successfully built c9b258db64f2
Successfully tagged compose_wordpress_wordpress:latest
Starting compose_wordpress_wordpress_1 ... done


docker ps -aをするとコンテナが作成されUP状態となっているのがわかります。

f:id:arcanum_jp:20200613103528p:plain


さてlocalhost:8080にアクセスしてみます。サイト設定の画面が表示されました。

f:id:arcanum_jp:20200613103726p:plain


Docker、はじめ、大変だなぁ、またツール覚えるのかよ!とか思っていたけど使い始めたらとてもいいツールですね。

そうだ、ワードプレスを入れてみよう!

こちらの続きです。
arcanum.hatenablog.com

そもそものはじまり

実はなんでJavaラーの自分がPHPなんてやってんの?ってなるが、ワードプレスを使ってみたくてであった。自分のサイトのトップページ、ベタにSpringBootの勉強で作ったものを入れている。これから色々と更新したいときにCMSあった方が便利だよねーーっと言う事でJavaベースのフリーなCMSを探していたんだけどいいのがないの。えーーー!仕事で今、Docker使ってワードプレス案件ガシガシやってるし、、、ここは1つ、サイトのトップはワードプレスにするか・・・と言うのが始まりであった。


※あくまでも開発環境などローカルで確認するために作った環境です。前回のNginxやPHP-FPMの設定も含め公開するには別途セキュリティ関連の検討が必要です。念の為。

MySQL

ここからは前回作成したコンテナに入っての作業です。

ワードプレスと言うとMySQLが必要らしく、PostgreSQL派の私めといたしましては苦虫を噛み潰したような気持ちで使うのです。

apt install mysql-server


とりあえずサーバー起動してバージョン確認してみる。ふむふむ、、バージョン8らしい。

root@e1cd6f6e4b7d:/# service mysql start
 * Starting MySQL database server mysqld                                                                                                                                            su: warning: cannot change directory to /nonexistent: No such file or directory
                                                                                                                                                                             [ OK ]
root@e1cd6f6e4b7d:/# mysql --version
mysql  Ver 8.0.20-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))
root@e1cd6f6e4b7d:/# 


これにワードプレス用のDBとユーザーを追加。mysqlにルートでログインしてDDLを実行する。データベースwordpressに権限を持つユーザーwpadminさん、パスワードはpasswordと言う感じです。

create database wordpress;
create user wpadmin@localhost identified by 'password';
grant all on wordpress.* to wpadmin@localhost;

ワードプレス

ワードプレスをインストールします。インストールと言ってもワードプレスのサイトからzip引っ張ってきて解凍した中身がワードプレス本体みたいですね。認証エラーになるとダルいので --no-check-certificateを付けてダウンロードしてます。それを解凍してドキュメントルートに全部移動。

wget https://ja.wordpress.org/wordpress-5.4.1-ja.zip  --no-check-certificate
unzip -q wordpress-5.4.1-ja.zip
mv ./wordpress/* /var/www/html


ここでサイトにアクセスしてもこんな感じです。おととい来やがれといわれました。
f:id:arcanum_jp:20200612131608p:plain


MySQL 拡張」とはなんぞや?要はサイトにアクセスした際にindex.phpから始まりますが、MySQLに接続できないので困ったということらしいです。JDBCの実装クラスがないぞ!みたいな。と言う事で今度はphp-mysqlと言うのをインストールします。あと、php-fpmとNginxを再起動しておきます

apt install php-mysql
/etc/init.d/php7.4-fpm restart
service nginx restart

おっと、なんか画面が変わりました。ワクワクしながら「さぁ始めましょう」を押してみます。
f:id:arcanum_jp:20200612132400p:plain

※次の画面で先ほどMySQLに設定したデータベース名、パスワード、ワードプレス用のデータベース内のテーブルにつけるプレフィクスについて入力しますが、その後、Nginxのエラーログにこんな感じで出力されます。初回アクセスでまだテーブルなどが作成されていないからみたいですね。

ubuntu@ip-xx-x-x-xxx:~$ tail -f /var/log/nginx/error.log
2020/10/14 02:02:33 [error] 11929#11929: *1 FastCGI sent in stderr: "PHP message: WordPress データベースエラー: Unknown column 'wp_' in 'field list' for query SELECT wp_" while reading response header from upstream, client: xxx.xxx.xx.xx, server: _, request: "POST /wp-admin/setup-config.php?step=2 HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.4-fpm.sock:", host: "ec2-xx-xxx-xxx-xx.ap-northeast-1.compute.amazonaws.com", referrer: "http://ec2-xx-xxx-xxx-xx.ap-northeast-1.compute.amazonaws.com/wp-admin/setup-config.php?step=1&language=ja"


その後入力画面が表示されるので先ほどMySQLに作成した情報を入力してみます。
f:id:arcanum_jp:20200612132632p:plain

なになに、、、手動でwp-config.phpファイルを作成し、中に次のテキストを貼り付け・・・とあるのでやってみます。

vi /var/www/html/wp-config.php

*先ほどの画面のグレーになっているwp-config.phpの内容をコピペして保存します。


その後「インストール実行」を押すと管理者の設定画面にきました。
f:id:arcanum_jp:20200612133337p:plain


あとは管理者の設定とサイトの設定をすればこの画面が出て終わりです。
f:id:arcanum_jp:20200612133525p:plain



こちらに続きます
arcanum.hatenablog.com


追記:
AWSでロードバランサ経由でワードプレスに接続するためには以下の作業が必要です。

AWSを使ってロードバランサ経由でワードプレスに接続する場合の注意として、通常AWS+ロードバランサ構成の場合、httpまたはhttpsでロードバランサで一旦受け、その後ターゲットとなるEC2にHTTPで飛ばします。そのためワードプレス内で再度HTTPSにリダイレクト→ロードバランサで再度HTTPにリダイレクトとループしてしまいうまくいきません。次のサイトで示すように、ELBからのアクセスで、かつプロトコルhttpsの場合には、強制的にhttpsで来たことにしてWordPress側で受けます。wp-config.phpの任意の場所に次の1文を足します。

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
    $_SERVER['HTTPS'] = 'on';

参考:WordPressカスタマイズ事例
100webdesign.jp


この作業を行った後、ログインしようとするとなぜか、「このページにアクセスする権限がありません。」というエラーとなりログインしたけど管理画面にアクセスできない現象となります。そのため以下のSSL対応の行を追加するとうまくいくようです。()

if (empty($_SERVER['HTTPS'])) {
    $_SERVER['HTTPS'] = 'on'; $_ENV['HTTPS'] = 'on';
}

※ 注意点として以下の1文があるのでこれの上に追加します。

require_once(ABSPATH . 'wp-settings.php');


こんな感じになっています。

if (empty($_SERVER['HTTPS'])) {
    $_SERVER['HTTPS'] = 'on'; $_ENV['HTTPS'] = 'on';
}

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
        $_SERVER['HTTPS'] = 'on';

wgetで証明書関連エラーでwordpressのzipがダウンロードできなかった

ワードプレスの勉強にとワードプレスをダウンロードしようとこんな感じでwgetするとERROR: cannot verify ja.wordpress.org's certificate・・・ん?エラーなんでだ?昨日は普通にダウンロードできていたで?内容から証明書関連かな?ダルい・・・と困っていたところ、、、

root@1795879ccfeb:/var/www# wget https://ja.wordpress.org/wordpress-5.4.1-ja.zip                        
--2020-06-12 02:24:41--  https://ja.wordpress.org/wordpress-5.4.1-ja.zip
Resolving ja.wordpress.org (ja.wordpress.org)... 198.143.164.252
Connecting to ja.wordpress.org (ja.wordpress.org)|198.143.164.252|:443... connected.
ERROR: cannot verify ja.wordpress.org's certificate, issued by 'CN=Go Daddy Secure Certificate Authority - G2,OU=http://certs.godaddy.com/repository/,O=GoDaddy.com\\, Inc.,L=Scottsdale,ST=Arizona,C=US':
  Unable to locally verify the issuer's authority.
To connect to ja.wordpress.org insecurely, use `--no-check-certificate'.


お!あるじぇねぇか!--no-check-certificateを付けて実行しろと・・・

To connect to ja.wordpress.org insecurely, use `--no-check-certificate'.

ということで--no-check-certificateを付けて実行すれば取れました。DockerfileとかにまとめていてURLの内容が確実ならいんじゃね・・・(( ̄δ・ ̄)ホジホジ

root@1795879ccfeb:/var/www# wget https://ja.wordpress.org/wordpress-5.4.1-ja.zip  --no-check-certificate
--2020-06-12 02:30:27--  https://ja.wordpress.org/wordpress-5.4.1-ja.zip
Resolving ja.wordpress.org (ja.wordpress.org)... 198.143.164.252
Connecting to ja.wordpress.org (ja.wordpress.org)|198.143.164.252|:443... connected.
WARNING: cannot verify ja.wordpress.org's certificate, issued by 'CN=Go Daddy Secure Certificate Authority - G2,OU=http://certs.godaddy.com/repository/,O=GoDaddy.com\\, Inc.,L=Scottsdale,ST=Arizona,C=US':
  Unable to locally verify the issuer's authority.
HTTP request sent, awaiting response... 200 OK
Length: 13960922 (13M) [application/zip]
Saving to: 'wordpress-5.4.1-ja.zip.1'

wordpress-5.4.1-ja.zip.1                      53%[=================================================>                                             ]   7.12M   214KB/s    eta 16s