2025年06月15日
_ [tDiary] tdiary建立で詰まったのでまとめておくか
tDiaryをrackで動作させつつ、サブディレクトリで動作させる方法がドキュメントになくて困ったので、困ったところを重点的に書いておこうかと思う。
要件は以下である:
- サブディレクトリに置きたかった(マスト)
- git cloneで構築できる(できれば)
tdiary.confに以下を書いておく(なおbase_urlの中身は各々の事情によって書換えること)。
@base_url = '/~eniehack/diary/'
nginxには以下のように書く。ただ、proxy_set_headerディレクティブは参考程度である。nginxはlocationディレクティブの優先順位がややこしいので要注意。 https://renoretriever.github.io/docs/nginx-location
location ^~ /~eniehack/diary/ {
proxy_pass http://localhost:9292/~eniehack/diary/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
tdiary-coreをgit cloneしてrack経由で起動するには、cloneしてきて、bundle installののち、bundle exec rackupでよい。
自分はここにomniauthとGFM対応を入れたかったので、Gemfile.localを編集してomniauthとtdiary-style-gfmを入れてやればよい。
omniauthの設定はこのあたりにある。
ちなみに、markdown対応styleは古いのか、そのままでは動かなかった。のでGFMを使うことにした。
[ツッコミを入れる]