nginx の allow と deny

nginx の 設定で、allow, deny を書くときの話。
細かい書き方は、ブログネタの定番(?)とも言えそうなネタなので、細かくは書かないが、ネット上の例を見ると、location の中に書いている例が多く見られる。 実際、location で指定したい場合が多いのだと思うが、マッチングの都合で、一カ所だけでは済まずに、複数箇所に書かなければならないケースも出てくると思う。

しかし、考えてみるに、管理用のディレクトリは location で塞ぐしかないが、バーチャルホストそのものにアクセスして欲しくない場合は、server の方に書いてしまえば、一発で防げる。

すごく当たり前のことを言っているようだが。。。
allow, deny は、http, server, location, limit_except の中にに書くことが出来る。
必要に応じて、書き分けよう。

ownCloud 入れてみた

Raspberry Pi 3Bに、Western Digital のHDDを繋げて、ownCloud 入れて、ファイルサーバにしてみた。

フロントは nginx + php-fpm で、dbは MySQL である。 というか、この WordPress と共有。
特に、ラズパイだから、何という要素はなく、普通に Linux のインストール手順で入れただけ。

パフォーマンスも全く問題ないと思われる。 多分、ネットワーク回線の方が遅い。
今時、自分でサーバを持つこと、自分でクラウド環境を作ることにどれほどの意味があるのかは微妙だが、自前でやってみるのは楽しい。

色々、やってみているけど、ラズパイ。 普通にサーバとして使える。
これから暑い季節になるが、冷却ケースくらいは必要かな。。。と思っている。

追記
全然、はまらなかった。。。みたいに書いたが、その後、tmp が小さすぎて、大きなファイルの転送に失敗した。 以前、tmpfs (ramdisk)に tmp を置いて Micro SD の寿命を延ばそうとしていたのが裏目に出た。
今は、HDD で動かしているので、素直に tmp を HDD に動かして解決。

Docker ネタを…

Raspberry Piで、Dockerというネタを書こうかなと思ったが…。

動作自体は64Bitの2B, 3Bだったら問題ないようだけど、CPUがARMなので、ほとんどのイメージがx86_64なDockerだと、結局Raspberry Pi用のイメージを使うという世界になってしまうようで、あまり意味が無いからやめた。

まあ、仮想コンテナとよりも、アプリケーションコンテナの分だけ、ハードウェアを揃えてもいいような世界だしね。。。

スティックPCとかでやったらいいようなネタかも。

Raspberry Pi Zero のパフォーマンス

数値データとかは何にもないです(笑) 感覚的な話。

Raspberry Pi Zero W が届いたので、普段 Raspberry Pi 3B で動かしている、このサイト(笑)を Micro SD だけ入れ替えて起動してみた。

結果、問題なく起動し、サイトも 3B よりかは遅いものの、同時アクセスされることがあまりない、備忘録・日記レベルのサイトならば問題なく動く。という感触。

起動はちょっと時間が掛かるが、それでも、Windows 7 以前の Windows マシンよりかは早いくらい。

メモリの使用状況だが、若干、スワップが発生していて、パフォーマンス的には気にならなかったものの、運用するなら Micro SD の寿命が気になるかなと思う。

処理速度的には遅いものの、省電力、低発熱はすばらしく、iPhone の AC アダプタで問題なく動くし、発熱も 3B が 53℃前後に対して、Zero W は39℃程度と、かなり良好。

悩むけど、やっぱり 3B で継続かな。。。 Zero で本格的に運用しようとすると、結局、ハブだのケーブルだのだらけになって、本体は小さいのに、邪魔な感じになってしまうから。

Zero は USB で PC に繋げて遊べるので、持ち運べるおもちゃになりそう。

Blog in A Box の WordPress の日本語化

WordPress の提供元である Automattic が、Raspberry Pi 用に一発でWordPress環境が構築できるパッケージである Blog in A Box を公開している。

簡単に Raspberry Pi で WordPress 環境が構築できるのだが、残念ながらメニューやテーマの設定が英語版である。 この環境を日本語化するには、以下の手順で行う。 なお、ssh は必須なので、インストールの際に設定しておく必要がある。

ssh で pi ユーザでログインして、以下のようにする。

cd wordpress
wp core update
wp core language install ja --activate
wp core language update

次に、ログインしたときには、日本語化されているはずだ。

なお、このWordPress環境は、cronでアップデートするようになっているらしい。 crontabにwp core language updateも追加しておいた方がいいのかもしれない。

通常の自動アップデートにしたかったら、

sudo chown -R www-data:www-data wordpress

とすればできるが、セキュリティなどはまた別で考慮する必要がある。