はてなブログに勝手にタイトルを入れるChrome拡張を作った。

久しぶりにChrome拡張。

github.com

なんかタイトルを考えると何かコンテンツがないといけないといけない気がして、日記という感じがしない。 それでなんとなく続かない。。。ような気がしてきたので、作った。 本文のところにフォーカスされると、勝手に"2018年2月6日の日記"とか入れる。 f:id:popkiller:20180206102909p:plain さて、作っているうちになんか気になることがあった。

私はいつも下のメニューから書いているのだが、 f:id:popkiller:20180206102943p:plain この場合だと動くのだけど、トップページからの日記を書くポチだと動かなかった。 DOMが違うんだな。
あと見たままとMarkdowmも違う(これは普通に考えるとそうなるだろう)。
全部に対応しようと思ったが、寝る時間だったのでやめた。

ちょっと考えてみたけど、普通に日記書きたい時とタイトルを付けたいときで分けるのにいいかも知れない。

Let's Encryptの更新で失敗したら。。。

単純にWebサーバー稼働時にやると失敗します。 こんなエラーが出ますね。

Attempting to renew cert (example.jp) from /etc/letsencrypt/renewal/example.jp.conf produced an unexpected error: Problem binding to port 443: Could not bind to IPv4 or IPv6.. Skipping.

ということで、stop, startをするコマンドで挟んで実行してみた。 更新できましたが、エラー時に通知するようなものにした方がいいかな。。。

#!/bin/bash

systemctl stop h2o
certbot renew 
systemctl start h2o

Laravelのformでpatchメソッド

LaravelでRoute::resourceとすると色々なrouteが作られるのだけど、updateはpatchですることになる。 REST的にはいい感じですが、formを使う場合はどうするのか? 調べてみたところ、formのmethodはpostにしてform内に

        {{ method_field('patch') }}

を追加すれば上手くやってくれる様子。 中々いい感じですよね。

IUS Community Projectを使うのがCentOSだと楽みたい

IUS
CentOSは初期状態だとパッケージ管理が弱いのは常識。
CentOS 7でもPythonは2系しか入っていない。
そこでこのリポジトリを追加してみた

yum install -y https://centos7.iuscommunity.org/ius-release.rpm
yum search python3
yum install -y python36*
pip3.6 install virtualenv

で一旦環境を作ることに成功した

Laravelのmigrationとseeder

DB関連ではmigrationsとseedsがあるのがLaravel。
なかなか良さそうなのでとりあえず今の開発では使っている。

migrationの実行

php artisan migrate

全てのmigrationをリセットするには

php artisan migrate:reset

seederでデータを登録するには

php artisan db:seed

全てのテーブルを作り直してseederをやるには

php artisan migrate:refresh --seed

久しぶりにLaravelの開発環境構築したらハマったのでメモ

WebサーバーはApacheで。
/var/www/html
配下にLaravelのプロジェクトがあるとする。
そうするとDocumentRootの設定としては /var/www/html/public
になる。

Laravelデフォルトだと.htaccessを使っているため、これを有効にしなければならない。 ということで先ほどのディレクトリの設定で AllowOverride All
が必要となる。

DocumentRoot "/var/www/html/public"

<Directory "/var/www/html/public">
    AllowOverride All
    # Allow open access:
    Require all granted
</Directory>

こんな感じ。
これを設定しない場合、最初の / 以外のURLが 404 not foundになってしまう。
これを設定すれば普通に動くようになる。

情報処理安全確保支援士試験に合格した

IPA 独立行政法人 情報処理推進機構:制度の概要:情報処理安全確保支援士試験
割と最近名前が変わって、それでいて盛り上がりに欠けている試験ですね…
さて、勉強方法振り返り。

午前対策

午前の問題はオンラインでひたすら過去問を解く
情報処理安全確保支援士過去問道場|情報処理安全確保支援士.com
応用情報技術者過去問道場|応用情報技術者試験.com
ある程度知識がある人であれば試験の1週間前くらいから隙間時間をみてはポチポチとやって解説を読めばなんとかなるかなと。
計算問題なんかは計算しないで解説だけ読んで考え方だけ覚えておけば大丈夫だと思います。
そもそもあまり知識がない人や余裕がある人は2~3週間くらいポチポチ問題解いてればいいかと。

午後対策

一応、過去問を読んで対策しようと思っていたが、問題文の長さを見て
「こんな時間ないなー」
と思い、割り切っていきました。
具体的には

この本を大体読んで終わりという感じです。これは本当におすすめ。
試験に出そうなところが無駄なく整理されています。
試験直前2日間くらいは最後の方の試験対策に振り切ったパートを読みましたが、これもいい。
まさに合格の為の本。

試験の感想

午前は過去問をやっていればまず問題なし。
午後1は思ったより点数が低かった。なんだろう…午後は記述式なので自分の回答はメモしていません。
Webプログラミングの問題は実際にコードをバリバリ書いている人なら余裕なので、かなり稼ぎポイントかなと。
自分もそこで稼げたと思います。
午後2は中々色々考えられる問題でしたね。なんとも言えない感じかなーと思ったのですが、思ったより取れてました。
回答として一つだけとも言えない問題が多かった印象なので、別解とか部分点が多いのかな。

まとめ

ある程度の技術、知識がある人が最短で合格するだけを考えます。
午後対策なら↑に書いたポケスタを全部読む。午前はオンラインで過去問。
これで大丈夫だと思います。