Admin Access

管理画面への入り口

管理者キーを入れると、この画面だけで送信数字とエラー一覧を確認できます。

API キーを毎回 URL に付けず、ブラウザの管理者セッションで画面を開けるようにしています。

シンプルな管理画面のたたき台

シンプルで使いやすい Firemail 管理画面

送信のしくみはそのままにして、管理者が迷わず確認と編集をできるようにするための画面です。今は構成と見た目を整える段階で、次のフェーズで実際の保存や送信につなぎます。

推奨公開先https://admin.fireredirect.com生成時刻 2026/06/05 20:51 JST

この画面は確認用UIです。まだ保存や送信は実行されません。

基本の流れ

この画面は 3 ステップで使う想定です

開発に詳しくなくても、上から順に見れば分かる並びにしています。

1

リストを入れる

お客様の一覧 CSV を取り込む場所です。最初にここだけ見れば大丈夫です。

2

文章を確認する

件名、最初のあいさつ、署名、本文を順番に見直せます。

3

結果を確認する

送信状況やエラー一覧、監視ログを見て問題がないか確認します。

いまの送信状態

稼働中

テスト送信は成功済みです。5分ごとの定期送信も動いています。

自動送信の間隔

5分ごと

通常は 5 分ごとに自動で送信処理を確認します。

見守りチェック

15分ごと

異常があるときだけ、自動で追加確認を 1 回だけ動かします。

管理画面のURL

admin.fireredirect.com

管理画面は専用 URL に分ける予定です。トップ URL は案内用に残せます。

公開まわり

公開URLまわりの決めごと

管理画面は root 直置きではなく、`admin.fireredirect.com` 分離を前提にしています。

公開 URL

https://admin.fireredirect.com

管理画面と API/Webhook の origin を 1 つに揃え、運用窓口を固定します。

ルートドメイン

https://fireredirect.com -> https://admin.fireredirect.com

初期公開は 302 転送で十分です。安定確認後に 301 へ切替える運用が安全です。

DNS

A fireredirect.com / A admin.fireredirect.com -> 85.131.244.29

同一 VPS に向ける構成で十分です。www を使う場合のみ CNAME を追加します。

Nginx

80 から 443 へ転送、443 は firemail-next へ proxy

admin は Next.js 管理画面、ルートは admin へ転送する server block を分離します。

SSL

Let's Encrypt で fireredirect.com + admin.fireredirect.com を同時発行

証明書自動更新の確認後に HSTS を有効化し、運用事故を避けます。

確認エリア

あとでここで状況を確認します

送信基盤は現状維持です。今は「どこで何を見るか」を先に分かりやすくしています。

Planned Action

送信の進み具合を見る

今日どれだけ送ったか、問題が起きていないかを一目で見られる予定です。

今は見た目だけです。次のフェーズで本物の数字を表示します。

Planned Action

手動で送る / 送り直す

必要なときだけ手動で送れるようにして、押し間違いも防ぐ予定です。

今はまだ送れません。次のフェーズで安全確認つきにします。

Planned Action

見守りの状態を見る

サーバーや自動実行が元気かどうかを、難しいログなしでも見やすくします。

今はまだ VPS の実ログに未接続です。

Planned Action

困りごと一覧を見る

送れなかった相手や注意が必要なものを、分かりやすく並べる予定です。

今はまだ自動取得していません。次のフェーズでつなぎます。

リスト管理

お客様リストの取込と送れなかった一覧

最初に触ることが多い場所です。上から順に見れば迷いにくい構成にしています。

Import

お客様リストを取り込む

/api/firemail/import

メールを送りたい相手の一覧を入れる場所です。CSV ファイルを選ぶ方法と、直接貼り付ける方法の両方を置いています。

CSV形式UTF-8見出し行あり

`service_code` などの管理用項目も入ります。難しい項目は下の用語メモを見れば判断できる形にします。

Download

送れなかった一覧を出す

firemail-error-list-2026-05-29.csv

送れなかった相手や除外された相手の一覧を、あとから見返せるようにする予定です。

emailreasonprovidercreated_atprovider_event_id

次のフェーズで、送れなかった理由も含めて CSV でダウンロードできるようにします。

文章編集

メールの文章をシンプルに整える場所

専門用語を減らし、順番に読めば意味が分かる編集欄に寄せています。

Editor

メールの件名を編集する

firemail_subject_templates

相手が最初に見る件名をここで調整します。

いくつかの件名を順番に使う前提です。難しい設定はあとで隠します。

Editor

最初のあいさつ文を編集する

firemail_intro_templates

メールの書き出し部分を、シンプルな表現に整える場所です。

最初の文章だけを分けて調整できるようにしています。

Editor

最後の署名を編集する

env + generated footer

会社名や問い合わせ先など、メールの最後に出る固定文を直す場所です。

今は仮置きです。次のフェーズでどこに保存するかを決めます。

Editor

サービスごとの本文を編集する

firemail_service_templates

サービスごとに説明やリンク先を変えたいときに使う場所です。

初心者でも分かるように、サービス名・説明URL・決済URLを並べて見せます。

用語メモ

分かりづらい言葉の意味

難しい単語は画面の下に残して、必要なときだけ確認できるようにします。

用語

service_code

サービスを見分けるための短い管理コードです。お客様向けには表示しません。

用語

service_description_url

そのサービスの案内ページ URL です。メール内の説明リンクに使う想定です。

用語

payment_url

お支払いページの URL です。メール内の決済ボタンやリンク先に使います。

ログ確認

トラブル時に見る場所

普段は意識しなくてよく、困ったときだけ見る場所として分けています。

Preview Log

送信サイクルログ

/var/log/firemail-cycle.log
cycle_ok schedule=true send=true
cloud delivery test: provider=mailtrap
from_name="Notification Center"

Preview Log

ヘルスチェックログ

/var/log/firemail-healthcheck.log
INFO cycle_ok age_seconds=118
INFO services healthy: firemail-next nginx cron
INFO no_manual_rerun_needed