サイト制作の初期フェーズで毎回発生する「構成図作成」を効率化するために、
純PHPで動く サイト構成図自動作成システム を公開しました。
このツールは、
- AI生成(OpenAI / Gemini / Claude)
- 手動編集
- 印刷(自動縮小)
- JSONエクスポート
を1つにまとめた、実務向けのシンプルなWebアプリです。
こんな人におすすめ
- 提案前に素早くサイトマップを作りたい
- 構成案をチーム内で共有しながら調整したい
- AI提案を叩き台にして、最終案は手で詰めたい
- Xserverなど共用サーバーにそのまま設置したい
主な機能
- ログイン認証(管理者ユーザー管理あり)
- 構成図の作成 / 編集 / 複製 / 削除
- AI生成と手動入力の切替
- ツリーエディタによる階層編集
- JSONエクスポート
- 印刷最適化(自動縮小でA4横に収める)
- AI設定画面(プロバイダ / APIキー / モデルを管理画面で登録)
対応AI(現行)
- OpenAI
- Google Gemini
- Anthropic Claude
管理画面(?action=settings)で切替可能です。
APIキーは暗号化してDB保存します(APP_SETTINGS_KEY 必須)。
セキュリティ設計
- 全POSTでCSRFトークン検証
- 状態変更操作はPOST専用
- ログイン成功時にセッションID再生成
- ログイン試行制限(username + IP と IP単独)
- SQLiteファイルの公開対策(公開外配置を推奨)
導入手順(ローカル)
php -S localhost:8000
ブラウザで http://localhost:8000/?action=login にアクセス。
初回は APP_ADMIN_USER / APP_ADMIN_PASS で管理者ユーザーを自動作成します。
Xserver設置の要点
- public_html/sitemap/ 配下へ配置
- .htaccess を設置(.htaccess.example をベースに作成)
- 必須環境変数を設定
- APP_ADMIN_USER
- APP_ADMIN_PASS
- APP_SQLITE_PATH(公開ディレクトリ外を推奨)
- APP_SETTINGS_KEY
- AI設定は管理画面で登録(.htaccess 側にAIキー不要)
配布内容
- ソースコード一式
- .htaccess.example
- 運用README(Xserver手順つき)
README: README.md
補足
- AI未設定時はルールベース生成にフォールバックします。
- 本番では APP_SETTINGS_KEY を十分長いランダム値にしてください。
- APP_SETTINGS_KEY を変更すると、既存の暗号化設定値は再登録が必要になります。
使ってみたい方へ
導入やカスタマイズ(画面項目追加、出力フォーマット拡張、ロール追加など)も対応可能です。
必要ならこの構成をベースに、制作会社向けテンプレートとして運用しやすい形まで整備できます。
