売上予測を
見える化

  • 登録不要
  • 基本無料
  • データ安全
無料で始める

請求書も
かんたん作成

  • テンプレート
  • 自動計算
  • PDF出力
今すぐ試す

📊 売上予測を今すぐ始める

未来の売上が、今わかる。登録不要・基本無料

Monerionを無料で試す →

【ハイブリッド開発】温故知新!FTP本番×Cloudflare Pagesプレビューで実現する5つの堅実Web開発手法

「古いものを大切にしながら新しいものを取り入れる」―これが温故知新の精神です。Web開発の世界でも、この考え方が新たな価値を生み出すことがあります。

今回は、20年間動き続けているFTPサーバーと最新のCloudflare Pagesを組み合わせた、堅実でありながらモダンな開発環境の構築方法をご紹介します。

なぜFTPサーバーを捨てないのか

動いているシステムの価値

「動いているシステムに手を加えるな」―これは、エンジニアなら誰もが胸に刻むべき格言です。

20年間無停止で動作する安定性は、どんな最新技術も簡単には真似できません:

  • 実証された信頼性:数万回のアップロードを経験
  • シンプルな構成:複雑な依存関係がない
  • 直感的な運用:FTPクライアントで即座に確認・修正可能
  • 低い運用コスト:学習コストがほぼゼロ

移行の隠れたリスク

完全移行には見えないリスクが潜んでいます:

移行作業中の機会損失
├── 本番環境の停止リスク
├── 新システムの学習コスト
├── 予期しない不具合の対応
└── 元に戻せないという心理的プレッシャー

「新しい技術に移行しなければ」という強迫観念から解放され、本当に必要な改善だけを取り入れる―これが賢明な判断です。

モダンな開発体験への憧れ

レガシー環境の課題

FTPベースの開発には、確かに課題があります:

  • プレビュー環境の欠如:本番直接更新のリスク
  • コラボレーションの難しさ:複数人での並行作業
  • 品質管理の限界:レビュープロセスの欠如

欲しいのはこんな機能

  • プレビューURL:変更内容を安全に確認
  • コードレビュー:チームでの品質向上
  • バージョン管理:変更履歴の追跡
  • 本番環境の変更:リスクは取りたくない

ハイブリッド構成という選択

完璧な解決策

本番はFTP、プレビューはCloudflare Pages―この組み合わせで全ての課題が解決します:

┌─────────────────┐    ┌────────────────────┐
│   本番環境      │    │  プレビュー環境    │
│  FTPサーバー     │    │ Cloudflare Pages   │
│                │    │                   │
│ ✅ 20年の実績    │    │ ✅ PR自動生成      │
│ ✅ 安定稼働      │    │ ✅ 即座にレビュー   │
│ ✅ ゼロ変更      │    │ ✅ 完全無料        │
└─────────────────┘    └────────────────────┘
         │                        │
         └────────┬─────────────────┘
                 │
         ┌───────────────┐
         │ 開発者の理想  │
         │ 両方のメリット │
         └───────────────┘

開発フローの変革

Before(FTP直接更新)

修正 → FTPアップロード → 本番確認 → 問題発見 → 慌てて修正

After(ハイブリッド構成)

修正 → PR作成 → プレビュー確認 → レビュー → 承認 → FTP自動デプロイ

実装手順:古いものと新しいものの融合

Step 1: Cloudflare Pagesプロジェクト作成

既存のFTPサーバーには一切手を加えません。

  1. Cloudflareダッシュボード → Workers & Pages
  2. 「Import an existing Git repository」を選択
  3. GitHubリポジトリと連携

Step 2: ビルド設定

{
  "build": {
    "command": "npm run build",
    "destination": "dist",
    "environment": {
      "NODE_VERSION": "18"
    }
  },
  "preview": {
    "alias": "preview.your-domain.com"
  }
}

Step 3: GitHub Actions でFTP自動デプロイ

name: Deploy to FTP
on:
  push:
    branches: [ main ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Setup Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '18'

      - name: Install dependencies
        run: npm install

      - name: Build
        run: npm run build

      - name: Deploy to FTP
        uses: SamKirkland/FTP-Deploy-Action@4.3.3
        with:
          server: ${{ secrets.FTP_SERVER }}
          username: ${{ secrets.FTP_USERNAME }}
          password: ${{ secrets.FTP_PASSWORD }}
          local-dir: ./dist/

Step 4: 運用フローの確立

1. 機能ブランチ作成
   git checkout -b feature/new-feature

2. 開発コミットプッシュ
   git push origin feature/new-feature

3. PR作成
    Cloudflare Pagesが自動でプレビュー生成
    URL: https://abc123.your-project.pages.dev

4. レビュー承認
    プレビューURLで実際の動作を確認

5. mainマージ
    GitHub ActionsがFTPサーバーに自動デプロイ

コスト分析:賢明な投資判断

完全移行の場合

項目 コスト リスク
新環境構築 50-100時間
データ移行 20-40時間
動作検証 30-50時間
チーム教育 10-20時間
合計 110-210時間

ハイブリッド構成の場合

項目 コスト リスク
Cloudflare設定 2-4時間
GitHub Actions設定 3-6時間
動作確認 2-4時間
チーム説明 1-2時間
合計 8-16時間

約90%の工数削減大幅なリスク軽減を実現。

実際の効果:数値で見る改善

開発効率の向上

  • レビュー時間: 30分 → 5分(83%短縮)
  • バグ検出率: 60% → 90%(50%向上)
  • デプロイ時間: 10分 → 2分(80%短縮)
  • 復旧時間: 30分 → 2分(93%短縮)

品質向上の指標

  • 本番でのエラー: 月5件 → 月1件
  • 緊急修正: 月3回 → 月0.5回
  • 顧客クレーム: 月2件 → 月0件

トラブルシューティング:現実的な対応

よくある問題と解決策

問題1: FTPデプロイが失敗する

# 解決策:パーミッション確認
chmod 755 dist/

問題2: プレビューと本番で表示が異なる

# 解決策:環境変数の統一
environment:
  BASE_URL: "https://your-domain.com"

問題3: ビルド時間が長い

# 解決策:キャッシュ活用
- name: Cache dependencies
  uses: actions/cache@v3
  with:
    path: ~/.npm
    key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}

他のレガシーシステムへの応用

適用可能なパターン

パターン1: WordPress + プレビュー

本番: WordPress(動的CMS
プレビュー: 静的生成版(Cloudflare Pages

パターン2: 社内システム + プレビュー

本番: オンプレサーバー
プレビュー: Cloudflare Pages

パターン3: PHP + プレビュー

本番: 共用レンタルサーバー
プレビュー: 静的ビルド版

まとめ:技術選択の知恵

温故知新の実践

  • 古いものの価値を認める:20年の安定性は貴重な資産
  • 新しいものを適切に取り入れる:必要な機能だけを追加
  • 全体最適を考える:部分最適に陥らない判断

成功のポイント

  1. 段階的改善:一度にすべてを変えない
  2. リスク管理:本番環境は触らない
  3. 実用性重視:理想より現実的な解決策
  4. コスト意識:投資対効果を常に考慮

最後に

技術の進歩は目覚ましく、常に「最新技術を使わなければ」というプレッシャーを感じがちです。しかし、本当に重要なのは、ビジネス価値を効率的に提供することです。

古い技術と新しい技術を適切に組み合わせることで、より堅実で効率的なシステムを構築できます。温故知新の精神で、賢明な技術選択を心がけましょう。


🎯 今すぐ始める

Monerionで売上予測を始めましょう

登録不要ですぐ使える
データは端末に安全保存
基本機能は永久無料
無料で使ってみる

30秒で始められます

← ブログトップに戻る