やわらかしかっけい

なんでもすぐに忘れてしまう自分のために

何回目!?Lets's Encrypt 自動更新できてなくて失効→入れ直し

ばかやろう。

ajicolor.hatenablog.jp
ajicolor.hatenablog.jp


同じ失敗を何度でも繰り替えす学習能力なし子ちゃん

# /root/certbot-auto certonly --webroot -w /var/www/html/domain1 -d domain1.com -d mail.domain1.com -w /var/www/html/domain2 -d domain2.com -w /var/www/html/domain3 -d domain3.com

証明書取り直し、慣れたもんですよ。もう。

# service httpd restart

で?(半ギレ)

効かなかった設定
  • /etc/cron.d/letsencrtpt
0 1 1 * * root /home/homepage/certbot-auto renew --post-hook "service httpd restart"

そもそもcronは動いてるんか?

# service crond status
crond (pid  22704) is running...

あっハイ……

cronってのは結局どこに書くのが正しいんや?

  • /var/spool/cron/root
    • 中身は空だった
  • /etc/cron.d/letsencrypt
    • 役に立たなかったのでいったん中身を消去。クソが…
  • /etc/crontab
    • 中身こんな感じだった
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed

なに???怖いんだけど

ちょっと一旦落ち着いて、ドライランしてみよう

/root/certbot-auto renew --force-renew --dry-run --post-hook "service httpd restart"

普通にできた

結局やっぱり/etc/cron.d/内のファイルに書いとくのが良さそうじゃない?

書き方がまずかったのでは?

  • /etc/cron.d/letsencrypt
0 1 1 * * root /home/homepage/certbot-auto renew --post-hook "service httpd restart"

ん?

certbot-auto のパスちがくね??

0 4 5 * * root /root/certbot-auto renew --force-renew --post-hook "service httpd restart"

これで!!!!!

どうだ!!!!

(あと、末尾に改行を入れないと実行されないという噂を聞いたのでしっかり改行をしたぞ!)

qiita.com

こちらの記事を見習って、今月5日(3日後)に強制更新させてみます

続報

cronは動きましたか?
# cat /var/log/cron |grep certbot
Dec  5 04:00:01 xxx-xxx-xx CROND[xxxxx]: (root) CMD (/root/certbot-auto renew --force-renew --post-hook "service httpd restart")

お!動いたっぽいぞ

# ls -l /etc/letsencrypt/archive/domain1.com/
total 16
 -rw-r--r-- 1 root root 1988 Dec  2 18:12 cert1.pem
 -rw-r--r-- 1 root root 1647 Dec  2 18:12 chain1.pem
 -rw-r--r-- 1 root root 3635 Dec  2 18:12 fullchain1.pem
 -rw-r--r-- 1 root root 1704 Dec  2 18:12 privkey1.pem

んんん・・・?おお・・・?新しいファイルができていない?????

#cat /var/log/httpd/error_log 

Apacheが再起動した形跡もないっぽいな・・・・・・



・・・・・・・・・・


・・・・・


 

〜続く〜

DNSレコード、ネームサーバー、いまだによくわからない

DNSレコード

DNS = ドメインネームシステム
  • このドメイン(○○.com)にはこのIPアドレスだよ、と紐付けする
  • 「A(AAAA)」「CNAME」「MX」「NS」「TXT」「PTR」などの種類がある

例えば、「ドメイン名 = IPアドレス」とするいちばん基本的なDNSレコードなら、
apple.com. A 17.149.160.49」という書き方をします。

DNSレコードってなんだ? | 超初心者のサーバー移転とドメイン移管&ついでにWordPressも!

ネームサーバー

  • ドメインごとに、このサーバーで運用するよ、と定める必要がある
    • たとえばXサーバーの場合は、こう

ネームサーバー1 ns1.xserver.jp( 219.94.200.246 )
ネームサーバー2 ns2.xserver.jp( 210.188.201.246 )
ネームサーバー3 ns3.xserver.jp( 219.94.200.247 )
ネームサーバー4 ns4.xserver.jp( 219.94.203.247 )
ネームサーバー5 ns5.xserver.jp( 210.188.201.247 )

https://www.xserver.ne.jp/manual/man_domain_namesever_setting.php

ネームサーバー のことをDNSサーバーとも言ったりして、ややこしいね・・

WordPress ページ送りを同カテゴリの記事に限定する

single.phpなどに置いてる
「前の記事へ」「次の記事へ」のページ送り

  • previous_post_link
  • next_post_link


そのリンク先を、今いる記事と同じ記事に限定するには・・・

第3の引数にtrueを指定するだけ

か、かんたんんんんんんん!!!!!!!

<?php previous_post_link('%link', 'ひとつ前の記事へ', true); ?>

$in_same_term
(真偽値) (オプション) 現在の投稿と同じタクソノミー・ターム(例:カテゴリー)の投稿に限定するかどうか。'true' にすると現在のタクソノミー・タームがついた投稿だけを表示します。
初期値: false
注意: 現在の投稿に 2 つ以上のターム(例:親と子の両方)がついていた場合、どのタームがついた投稿へリンクするかは選べません。

テンプレートタグ/previous post link - WordPress Codex 日本語版