2005-01-17
MGS3
結局HDD化は保留して三周目。ケロタン捕獲ツアーを実施するもどこかで撃ちもらしていたらしく、称号はシャーク。ツチノコも捕獲してたんだけど、称号ツチノコは食べなきゃ駄目(?)なのね。四周目はどうするかなぁ。
携帯修理
真っ二つになりながらも健気に動作していた携帯電話がとうとう本格的に壊れてしまった。本体は生きているみたいなのだけど、液晶に何も表示されないし、通話用のスピーカからも音がしない。みると、本体側と液晶側をつないでいる二本のフレキのうち一本が千切れている。そりゃ駄目だわ。
仕方がないのでauショップに持っていくと5,000円で修理してくれるという。機種変更でもよかったのだけど、7ヶ月たっていないと無理らしく、素直に修理してもらうことにした。代替機はW21H。で、必要最低限の機能設定をしたんだけど、もういろいろ訳わかんねぇ。特定の機種に対する慣れを差し引いてもインタフェースの出来が悪いような気がするけど、どうよ?
やはりソニーのやつはジョグダイヤルにこだわっているだけあって、そこに関連する部分は練りこまれてる感じがする。といいつつも次は東芝のに戻りたいんだけど。
2006-01-17
2008-01-17
2014-01-17
nginx+Rack環境に移行した
歴史的経緯で、いままでこの日記はapache+cgiという昔ながらの環境で動かしていたのだけど、バージョンアップ時のトラブルやプラグインの管理等々で手間がかかることがままあったので、パッケージの更新はgemで、サーバーはRackで動かして、proxy serverとしてnginxを使うことにした。
tDiary側
基本的には公式リリースのgemを使用するつもりなので、
$gem install tdiary
でいいのだけど、tdiary-contribはHEADを追いかけたいので今回だけ、githubから最新版を持ってきてgemを作って入れた。やり方はこの間書いたので省略。
$ gem list --local | grep tdiary tdiary (4.0.2.20131215)
こんなかんじになっていればOK。
$tdiary new ~/diary $cd ~/diary $bundle exec server start
で動くことを確認して一旦停止。 起動時に動くように/etc/init.d/tdiaryを以下のような内容で作成。
#! /bin/sh ### BEGIN INIT INFO # Provides: tDiary # Required-Start: $local_fs $remote_fs $network $syslog $named # Required-Stop: $local_fs $remote_fs $network $syslog $named # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: tDiary initscript # Description: tDiary initscript # placed in /etc/init.d. ### END INIT INFO # Author: kp <knomura.1394@gmail.com> # USER=www-data RBENV_ROOT=/home/kp/.rbenv PATH=$RBENV_ROOT:/sbin:/usr/sbin:/bin:/usr/bin DESC="tDiary server" NAME=tdiary PIDFILE=$NAME.pid TDIARY_PATH="/home/kp/diary" echo -n "Stopping:tDiary " case "$1" in start) echo -n "Starting:tDiary " start-stop-daemon --start --pidfile $TDIARY_PATH/$PIDFILE --background \ --chdir $TDIARY_PATH --chuid $USER \ --exec $RBENV_ROOT/shims/bundle \ -- exec $NAME server -b localhost && echo [ OK ] || echo [FAIL] ;; stop) start-stop-daemon --stop --oknodo --pidfile $TDIARY_PATH/$PIDFILE && echo [ OK ] || echo [FAIL] ;; restart) $0 stop $0 start ;; *) echo "Usage:$0 {start|stop|restart}" exit 1; ;; esac
あとは、
- 独自にカスタマイズしたpluginをdiary/custom/pluginに移動し、tdiary.confに記述
- いままでの日記のデータをdiary/dataに移動し、www-dataで書けるようにユーザ権限を設定
- 使用しているテーマをディレクトリごとdiary/themeにコピー
- Gemfile.localにtidary-contribをパス指定で記述
したくらい。
nignx
インストールしてserverを設定。一部抜粋すると、
server { listen 80; listen [::]:80; server_name mmho.net; access_log /var/log/nginx/$server_name-access.log; error_log /var/log/nginx/$server_name-error.log error; rewrite ^([^.]*[^/])$ $1/ permanent; location /diary/ { proxy_pass http://localhost:19292/; proxy_redirect default; } location = / { rewrite ^ http://$server_name:$server_port/diary/; } }
こんな感じ。
いままでどおり、/diaryでアクセスできるように設定したのだけど、proxyまわりの設定がよくわからなくて難儀した。 proxy_passの最後のスラッシュがないと動きが変わるので注意。
(追記)
リンク元として自分自身が記録されていたので、X-Forwarded-Hostを設定し、 base_urlをconfig.ruで設定するようにしたけど、まだなにかおかしい気がする。
--- mmho.bak 2014-01-20 10:24:10.926716279 +0900 +++ mmho 2014-01-17 16:43:38.566865066 +0900 @@ -19,8 +19,10 @@ rewrite ^([^.]*[^/])$ $1/ permanent; location /diary/ { - proxy_pass http://localhost:19292/; + proxy_pass http://localhost:19292; proxy_redirect default; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Server $host; } location = / {
nginxの設定の差分はこんなかんじで、
--- config.ru.bak 2014-01-20 10:29:32.870703472 +0900 +++ config.ru 2014-01-17 15:00:37.078819871 +0900 @@ -2,5 +2,5 @@ require 'tdiary/application' use ::Rack::Reloader unless ENV['RACK_ENV'] == 'production' -base_dir = '/' +base_dir = '/diary/' run TDiary::Application.new( base_dir )
config.ruはこんな感じで変更。
Before...
hama [MGS3の話。 ザ・ペインを倒した後に奴が乗っていた場所に武器らしき ものが見えますが、あれは取れないのですか?]
kp [スタミナキルで倒したらUNIFORMを落とします。出口の近くから左に回りこんでローリングすればオッケーです。]
kp [右だった。]