最近 Qiita に記事を書いているので WordPress に同期してみた
参考にしたサイト:Qiitaの記事をWordPressブログに同期できるようにしてみた
ここのサイトにある最近、Qiitaへ投稿すると、個人ブログへの投稿が少なくなってしまうというのは激しく同意!!
なので同じように FeedWordPress プラグインを使って同期してみた。
Qiitaの下書きにも使えるように、このサイトは JP Markdown を入れて、投稿にマークダウンも使えるようにしているからか
Qiitaから読み込んだ記事がかなり怪しい感じに(笑)なってますが、詳細は Qiita で確認してください。
ラズパイ(Linux) からUSB温度計で温度を測る
うちではラズパイ が常時動いているので、これで温度が測れれば良い。
1-wire で動くDS18B20 などの温度センサーを使って電子工作する方法もあるが(前にやった)、はんだ付けとか 1-wire 設定とか結構面倒くさい。
今回はもっとお手軽に USB温度計 thermometer-528018 を使ってみる。980円ぐらい。
USBで挿してlinuxから温度を取得できる。
Windowsでも専用アプリで温度は取れるけれど使い勝手は悪い。
Windowsは、ここからTEMPer用をダウンロード 現時点ではv26が最新 USBなので、Raspberry Pi の様に I/O ポートがないLinuxマシンでも温度が測れるので、サーバー室なんかに置いても良いかも。 gitからソースをクローンする。
libusb-dev がないとエラーになる。gcc は既に入っていればインストールの必要なし。
chmod u+s temper で権限を付与しないと root でしか使えなくなるので権限を追加しておく。
実行すると、日時と温度を表示する。
TIPS.1 ローカルタイムにする
そのままだと日付がグリニッジ標準なので、タイムゾーンに合わせるTIPS.2 ラズパイの罠
ラズベリーパイのUSBポートに直挿しした場合、本体の温度が回り込んで5℃ぐらい温度が高くなる。100均のUSB方向転換器なんかを間にかませると大丈夫。 後は cron から呼び出して温度を見て IFTTT に投げるなり、シェルスクリプトでなんやかやするなり応用は無限大 ∞ 。
その他参考になりそうなサイト
AmbientIOTデータの可視化サービス。ライブラリを入れてちょっと修正の必要はあるけれど、グラフ化することができます。
Google Homeにセンサーの値を言ってもらう
言ってもらうと嬉しいよね。
Raspberry Pi Zero用 赤外線 + 環境センサ 拡張ボード「RPZ-IR-Sensor」(端子未実装)
USBでなくてもこんなのもあります。ボード直付けなので、ボードの温度に影響されそうなのでキャリブレーションは必須かな?
単純にラズパイだけでCPU温度を測るには
Laravel メアド以外でログインしたい
メアドではなく name でログインする方法
LoginController に以下の関数を追加する。別のフィールドをログインに使う場合はそのフィールド名を記述 app/Http/Controllers/Auth/LoginController.php
resources/views/auth/login.blade.php
WordPress プラグイン slack-contact-form-7 で入力内容まで Slack に送るプチハック
Slack はなかなか便利
Slack を業務で使っている。U/Iは馴染めないけれど、カスタマイズ方法が提供されてて、ツールも豊富。サイトは WordPress を使っている
CMSなんで編集もしやすいしプラグインもテーマも揃っている。(バージョンアップが頻繁過ぎるのが玉に瑕だけど)そうなると、問い合わせフォームはどうしても珠玉の名作 Contact-form-7プラグイン とかになる。
折角 Slack を使っているんだから問い合わせも通知させたいよね。
問い合わせ時に Slack に通知する
ということでSlackプラグイン + Contact-form-7 + Slack-contact-form-7プラグイン を入れると問い合わせ時に Slack に通知はされる。
されるのだが・・・ Someone just sent a message through *コンタクトフォーム 1* _Contact Form 7_. Check your email!
送られてくるのなんかタイトルだけじゃん!? これでメールを見に行くのは2度手間なのでプチハックする。
通知だけじゃなく入力内容も送るプチハック
wp-content/plugins/slack-contact-form-7/slack-contact-form-7.php を以下の様に修正する。キーが _wpcf7* みたいなのはコントロールっぽいので除外する。
後は、タイトルを送っているところを丸っと消して、結合した内容を送信すればOK。 これでメールを開く手間をかけずに #Slack だけで内容を確認できるようになりました。
ApacheからPythonを呼ぶ設定
Apache側の準備
httpd.conf の
・DirectoryIndex に index.py を追加
・AddHandler に .py を追加。
1 2 3 |
DirectoryIndex index.html index.php index.py AddHandler cdi-script .cgi .py |
ruby、python は、以下のoptionsを設定
1 2 |
Options ExecCGI |
Python は cgi として動くのでシェバング(1行目)を忘れずに。別バージョンで使う場合はここを修正する。例) #!/usr/bin/python36
1 2 3 4 5 |
#!/usr/bin/python # coding:utf-8 print "Content-Type: text/html\n"; print "Hello World!"; |
作ったスクリプトには x 属性を追加しておく。例) chmod +x index.py
Pythonをインストール
最新の Python は python36 だが、Tensorflow(Python36未対応)等を使う場合は Python35 を入れる。(x が 6 とか 5 とかになる。
1 2 3 |
$ yum install python3x $ yum install python3x-pip |
Python35 の pip を使う場合は、以下の様に実行する。
1 2 |
$ python35 -m pip install tensorflow |
AwsLinux に Lamp 環境構築
アップデート・アップグレード
1 2 3 |
$ sudo yum update $ sudo yum upgrade |
有効なパッケージの確認
1 2 |
$ sudo yum list available | grep パッケージ名 |
パッケージ名には httpd* とか指定する。httpd(ver2.2) と httpd24(ver2.4) が見つかる。
複数のバージョンが混在しない場合は httpd をインストールすればOK
AWSLinux のバージョン確認方法
バージョンによってパッケージが様変わりするのでバージョンの確認方法を
1 2 |
cat /etc/system-release |
Webサーバー
apache2
1 2 3 4 5 6 7 8 |
$ sudo yum -y install httpd24 $ vi /etc/httpd/conf/httpd.conf + <Directory /var/www/html> + AllowOverride all + </Directory> $ chkconfig httpd on $ service httpd start |
https を使うには
1 2 |
$ sudo yum -y install mod24_ssl |
参考:チュートリアル: Amazon Linux で SSL/TLS を使用できるように Apache ウェブサーバーを設定する
DB
MySQL
mysql も mysql(5.5-1)、mysql51、mysql55(5.5.58)、mysql56、mysql57 がある。
1 2 3 |
$ sudo yum install mysql57-server $ mysql_secure_installation |
※ 201709版のAWSLinuxは上のリポジトリが入っているが、201712版は入っていないので注意すること。
ユーザ作成
1 2 3 4 5 6 7 8 9 |
$ mysql -p Enter password: mysql> CREATE USER ユーザ名; mysql> CREATE USER user IDENTIFIED BY [PASSWORD] ‘パスワード’; MySQL> CREATE DATABASE DB名 CHARACTER SET utf8; MySQL> GRANT ALL ON DB名.* to ユーザ名; MySQL> FLUSH PRIVILEGES; mysql> \q |
PHP
PHPも、PHP(5.3)、PHP54、PHP55、PHP56、PHP70、PHP71 があるので妥当なバージョンを選択する。
PHP 7.1 インストール
1 2 3 |
$ sudo yum install php71 php71-opcache php71-mbstring php71-xml php71-gd php71-mysqli php71-zip php71-curl $ service httpd restart |
AWS ELB:443 EC2:80 で WordPress を立ち上げる場合
wp-config.phpの上部に
1 2 3 4 5 |
// for https on if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { $_SERVER['HTTPS'] = 'on'; } |
を追記。wp_opions の seturl と home を https:// に変更する。
□公式ドキュメント
Function Reference/is ssl « WordPress Codex