トップ 最新 次の日記(2025年06月16日)» 追記 RSS

両B面


2025年06月15日

_ [tDiary] tdiary建立

お、ようやく立てられた 4時間くらいかかったので詰まったとこ書こうと思ったけど、腹減ったから後でまとめるか

_ [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を使うことにした。