久々に真面目に作業した日だった
今日したこと
- 徹夜でNginxと闘う
- 起きたらちゃんと動かねーぞってメール
- 疲れたのでラーメン
POSTするとTIMEOUTする
昨日も書いてたNginxと闘った件、クソやっかいだった。 正解の原因にたどり着くまで無駄なあがきを相当した。
現象としては、
Wordpressを立てると普通に表示されるがインストールステップの”次へ”ボタンを押すとそこからTIMEOUTする。 既にあるWordpressのwp-admin等も表示は出来るがログインボタンを押すとTIMEOUTする。
Wordpressに対するPOSTが全てTIMEOUTするということが分かった。
構造は
こんなかんじ。 Nginxがいっぱい。 この経路のどこでTIMEOUTなんだよと。。。 触る気が失せる構造にしてしまって辛みを感じている。
本当の構造はこの2倍くらいNginxやApacheとかの要素がある。
まずタイムアウト言われたのでNginxのタイムアウト値をひたすら増やした。 そうしたら1分くらい待つと500エラーが返ってくるようになった。
そのとき色々弄っていた先入観でNginx-1-2あたりでX-Forwarded辺りのフラグが原因ではーとまず当たりを付けた。 実際にhttpsとかhttpとかで値を変えると微妙に挙動が変わる。 これに惑わされてひたすらあれーーーってやってた。
2時間くらい闘った後、なんとなく auth_requestを止めてみた。
そしたらなんか治った。 auth_requestって。。。Nginxのサブリクエストが原因かよと。。 無駄に2時間くらい闘って損した。 見に行くとauth_serverのNginxにPumaからの応答タイムアウトしたよーってログが吐かれてた。
どうやらWordpresにPOSTしにいったときのauth_requestだけpumaに接続できずタイムアウトするらしい。。。 わけわからん。 GET時のauth_requestは一瞬で返ってくるのに。。。 しかもRailsのログに何も出てこない。
RailsのRackとかの低レイヤーが原因そうだけど。。。 全然わからん。。。 無能だからRailsとかなんで動いてるのかすらわからん。 最近メタプロやって大体どんな感じになってるか想像できるようになってきたけど。。
今度時間があるときにこの問題は検証したい。
結局別のルートに逃げて問題を対処した。
Wordpressのphpとかのファイルパーミッション
Docker製のWordpressならOwnerとGroupのIDを33にしておこうな。 ちょっと弄ったときに0:0とかにしておくとバグる
プラグインアップデート時に接続情報を入力しろと出ててきてプラグイン更新できないらしい。
WordPress更新時にFTP情報入力画面が表示される場合の対処方法3つ | sand a lot Web & Music Create [札幌]
寝起きに動きませんとかメールが来ててつらかった。
どうでもいいはなし
とりあえずタスクが片付いたのでエロゲして癒やされたい。 ストロングゼロを3本買ってきたのでたぶん楽しくやれる。
卒論発表 レジュメとかいうのしらんけどまぁええやろ。
なんかバリデーションがなにもしてないWebサービスが荒らされてて笑う。 明日は我が身ですわー。