Web

Formspree

例によって例のごとく、ドキュメントが未整備なオープンソースアプリをインストールしたので、そのメモ。 Formspree は、静的サイトなどにメールフォームを設置するためのサーバーアプリケーションである。設置が面倒な方は、ホスティングサービスもあるので、そちらを利用された方がよいかと。 まず、Python をインストールする。Python は、個人的に pyenv を使うので、そのように。 git clone https://github.com/pyenv/pyenv.git ~/.pyenv .profile を編集して、以下を追記。 PYENV_ROOT="$HOME/.pyenv" export PYENV_ROOT if [ -d "$PYENV_ROOT/bin" ] ; then PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" fi 前提ファイルをインストール sudo apt install build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev libmariadb-dev-compat libpq-dev Node.js もインストールしておく。 curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt install -y nodejs Python をインストール。その後、pipenv をインストール。
Read more

Apache で php-fpm を使う

やっぱり、Apache でも http2 を有効にしたい!ということで、慣れ親しんだ、php_module からおさらばして、php-fpm で構成し直した。Debian & php 7.3 での例を示す。 まず、php-fpm をインストール。まあ、php_module を削除すれば、勝手に php-fpm が入るんですが。ダウンタイムを極力避けるなら、この手順で。 sudo apt install php-fpm 次に proxy_fcgi を有効にする。 sudo a2enmod proxy_fcgi そうしたら、php_module を削除する。 sudo apt purge libapache2-mod-php libapache2-mod-php7.3 prefork モジュールが読み込まれているのをやめて、event モジュールに差し替える。ついでに、http2 モジュールを有効にする。 sudo a2dismod mpm_prefork sudo a2enmod mpm_event http2 最後に、Apache の php-fpm 設定を有効にする。 sudo a2enconf php7.3-fpm あとは、Apache を再起動するだけ。 sudo systemctl restart apache2 うむ。簡単だった。

ドメイン名を変更しました

旧来の daybook.biz から、新たに loginterests.com にドメイン名を変更しました。気分転換というか、既に(というか、最初から)日誌になってなかったので、興味のあることをつらつら記録していく、という現状に近い意味を持たせようか、と。 あと、サーバーを Debian Buster にアップグレードしたんですが、なぜか daybook.biz だけ不調になりまして、ここも心機一転。Wordpress から、Hugo へプラットホームを変えました。サイトジェネレータ型のいいところは、素の HTML/CSS/Javascript を置くだけなので、システムの変更に強い点。今回、図らずも Wordpress はその弱点を晒してしまったということで。Worddpress 本体は、PHP のバージョンが上がってもきちんと対応してるので、まあ、使ってるプラグインとかテーマが悪いのでしょう。 細々続いているこのサイトですが、今後ともよろしくお願いします。はい。 なお、一応、旧来のサイトも残してあります。見てみたいという奇特な方は、こちらからどうぞ。

Vanilla Forums

Debian GNU/Linux 10 Buster をインストールした VPS に、nginx を入れて、Vanilla Forums を立ち上げたので、そのメモ。Web サーバーに Apache を使う場合は、.htaccess のひな形が予め仕込まれてるので、注意点はない。 まずは、nginx と php をインストール sudo apt install nginx sudo apt install php php-apcu php-bz2 php-cli php-curl php-fpm php-gettext php-imagick php-imap php-mbstring php-mdb2-driver-mysql php-mdb2-driver-pgsql php-mysql php-pgsql php-readline php-tokenizer php-xml php-xmlrpc php-zip Github からリリース版を取得。適切な位置 (仮に、/srv/vanilla とする) へ展開。 nginx の server {} ディレクティブ内で以下のように設定。 root /srv/vanilla; # Add index.php to the list if you are using PHP index index.php; # Block some folders as an extra hardening measure.
Read more

Newspipe のインストール

Feedbin の設置には成功したものの、どうやってもフィードを更新してくれなくて、使用を断念したが、他によさげなアグリゲーターがないか、😎 Awesome lists about all kinds of interesting topics で探したところ、Newspipe が使いやすそうだったので、これをインストールしてみた。 結果から言うと、丸二日かかって稼働に成功。やったね!😁 まず、Python 3.7 以上が必要だが、Debian 9 (Stretch) に入っているのは、3.5。ということで、ソースからインストールする。現時点での最新版は、3.7.3。 最初に、前提となるパッケージをインストールしておく。 sudo apt install -y build-essential python-dev python-setuptools python-pip python-smbus libssl-dev libffi-dev zlib1g-dev libreadline-gplv2-dev libsqlite3-dev libbz2-dev libncursesw5-dev libgdbm-dev liblzma-dev uuid-dev tk-dev zlibc libpq-dev libmariadbclient-dev sudo apt install -y apache2-dev sudo pip install pipenv 次に、適当なところでアーカイブを展開し、以下を実行する。 ./configure --enable-shared --enable-optimizations make sudo make altinstall sudo ldconfig –enable-shared オプションって推奨されてないんじゃないの?と思う人もいるかも知れませんが、mod_wsgi に共有ライブラリが必要なので、指定せざるを得ません。最後の ldconfig は、Python 共有ライブラリを認識させるためのおまじない。やっておかないと実行時にエラーが起きます。 Python がインストールできたら、PostgreSQL も必要なので、インストールしておく。うちは、別インスタンスにインストール済みなので、パス。いずれにせよ、データベースを作成しておく。
Read more

Feedbin のインストール

結果的に、動作しなかったが、勿体ないので、記事は残しておく。 ニュースサイトの閲覧に、サーバー設置型であるニュースフィーダーの Fever を使っているのだが、ディスコンになってしまって、乗り換え先を探していたところ、オープンソースで公開されている Freebin がよさげだったので、Debian GNU/Linux 9 Stretch にインストールしてみた。Feedbin に月 $5 払えば、インストールなどいらないのだが、ドキュメントに書かれていない設定が多数あって、試行錯誤に丸一日費やしたので、どこかに残しておかないと勿体なかったというのもある。😁 まず、Stripe.com のアカウントが必要なので、サインアップする。 ダッシュボードの「テスト API キーの取得」に、公開可能キーとシークレットキーがあるので、これをいったんコピーしておく。 次に、サイドバーの Billing → 商品から、商品を 9 種類追加する。商品ごとの料金プランで、API ID に以下の値をひとつずつ設定する。面倒だが、Stripe.com に該当の API ID を持つ商品(料金プラン)がないとエラーになるので、頑張って設定する。 basic-monthly basic-yearly basic-monthly-2 basic-yearly-2 basic-monthly-3 basic-yearly-3 free timed trial 設定が終わったら、インストール作業に入る。まず、Feedbin を実行するユーザーを作成する。 sudo useradd -m feedbin 実行には、memcahed、elasticsearch、ruby が必要なので、インストールする。ただし、システムデフォルトの ruby は、バージョンが古い (2.3) ので、rvm から必要なバージョンを導入しなくてはならない。(無論、rbenv から導入してもよい) sudo apt install dirmngr sudo apt install apt-transport-https sudo apt install curl sudo apt install memcached sudo apt install -t stretch-backports redis sudo gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E37D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.
Read more

Pydio Cells の隠し仕様

ファイル共有サーバーソフト、Pydio が、内容を一新、Go でスクラッチから書き直されて、Pydio Cells となった。 最近になって、更新のための時間が取れたので、インストールしてみた。ところ、このブログも乗っかってる専鯖上の VM には問題なくインストール完了。ところが、ストレージ目的で借りている VPS で、所謂ヌルポインタエラーが出た。フォーラムで質問しても解決しなかったが、うまくいったケースとそうでないケースを見比べて違いを埋めていった結果、Pydio Cells は、プライベート IP アドレスがないとセグメンテーションフォールトを起こす仕様になっていることがわかった。 ドキュメントのどこにも書いてないが、ソースではしっかりチェックされてて、確かにプライベートアドレスがないとエラーになる箇所があった。ところがそのエラーをチェックせずに実行を継続しているので所謂ぬるぽになっている。明らかなバグ。フォーラムで報告しておいた。 [2019/03/15 追記] バージョン 1.4 でこの問題が解決されていることを確認しました。

Droplr 正式サービス開始

以前ちょこっと紹介した Droplr ですが、クローズドβが終了し、正式にサービスを開始しました。 詳しくは、ウェブサイトの動画をご覧頂ければおわかりになると思いますが、使い方がとにかく簡単。URLやファイルをそのままメニューバーのアイコンにドロップするだけ。BlueBird、Echofon、Tweetie、Twitt といった Twitter クライアントに対応 (もちろん、twitter.com にも) しており、クリックひとつでツイート画面が開いて URL をペーストしてくれます。画像やファイルは合計 1GB まで保存可能で、これひとつでもうあれこれサービスを使い分ける必要はないのじゃないでしょうか。しかも無料。:) Twitter アカウントがあればすぐに使い始められますので、Mac で Twitter な方には是非お奨めしたいサービスです。Socialite とか、Kiwi、QFeeder、Twitterrific といった他のクライアントにも対応してくれれば嬉しいですね。

Cash for Clunkers Confluence Edition!

ATLASSIAN の Cash for Clunkers 再び! 今度は、Wiki システムが対象です! MediaWiki や、DokuWiki、MindTouch など使ってみましたが、MediaWiki や DokuWiki は、Wiki 文法が面倒で使ってくれる人がいません。MindTouch はその点の問題はないものの、*nix でのインストール/運用がしち面倒くさい! だからといってそれだけのために、Windows サーバを立てるわけにもいかないし。 その点、Confluence はインストールも運用も手間いらずです。 今回のポンコツ下取りキャンペーンwは、使えないコラボレーションシステムの代わりに、Confluence の Starter Edition (10 ユーザ) が無料で貰えるキャンペーン! (または、20%引きクーポン) これは応募しない手はないですよ! Cash for Clunkers のページから「Make the trade」をクリックして以下の要領で応募しましょう! ATLASSIAN.com のアカウントがない方はここでアカウントを作成。既に持っている方は、ログインします。 20%引きクーポンか、Stater Edition プレゼントかを選びます。 “Select your clunker” で下取り (?) に出すツールを選択。リストになければ、”OTHER (if clunker not listed)” を選択して、そのすぐ下の欄にツールの名前を入力します。 そして、”What frustrates you about your current clunker?” の欄にいかにそれがポンコツであるかを切々と記入。:D “Upload a screenshot of your clunker” のボタンをクリックしてそのポンコツツールのスクリーンショットを指定します。 最後に、”Submit” ボタンをクリックで、応募終了! 期限は、12月11日 (金) です。奮ってご応募のほどを!
Read more

CloudApp & Droplr

どちらもまだクローズドβテスト中ですが、幸いにも招待を受けることができたので、ちょっと感想など。 CloudApp 使い始めて間もないのですが、画像や動画、ファイルのアップロードと URL 短縮が同時に行えるサービスです (もちろん、URL の短縮だけを行うこともできます。MobileMe の iDisk + bit.ly or tr.im といった感じのサービスですね)。利用するには、クライアントアプリケーションをダウンロード・インストールする必要があります。Web から利用することはできません (参照するだけならブラウザがあれば事足りるのは当然なんですけどね)。しかも、アップロードしたファイルの管理はもとより、URLのクリック数を取得することもできません。始まったばかりでこれから様々な機能が実装されていく状態といったところです。一般公開はかなり先になるのではないでしょうか。ちなみにクライアントアプリは、Mac 専用なので、今のところ Windows から利用することはできません。 Droplr 一方の Droplr も同様のサービスですが、こちらはアップロードしたファイルの管理や URL のクリック数を参照することができます (削除もできます)。URL短縮に使用するドメイン名を「droplr.com」「drp.ly」のいずれかから選択することができる他、自前のドメイン名があればそれを使用することもできるようになっています。こちらもクライアントアプリが Mac にしか対応していないため、Windows からは利用できません。 総じて、Droplr の方が機能については先行していますが、両方ともまだクローズドβテスト中なのは冒頭で述べた通りで、CloudApp も遠からず機能を充実させていくことと思われます。スクリーンショットなども掲載できれば良かったのですが、開発者からそれはやめてくれと釘を刺されているので、文字だけの紹介になったことについてはご勘弁を。しばらく使い込んでからまた詳しくレポートしたいと考えています。