BLOGスタッフブログ

インソースマーケティングデザイン

2012.02.17 システム

CakePHPで複数アプリケーション管理

CakePHPはPHPのフレームワークです。
どちらかというと中・小規模開発に向いています。
そのため、基本的には管理できるアプリケーションは1つだけです。

しかし、1つのサイトあるいはシステムでも
複数アプリケーションを管理したいというのはよくある話です。
例えば、一般利用者向けアプリと管理者向けアプリを分けたいというような。

そんなとき弊社では、CakePHPを複数インストールするのではなく、
下記のような方法をとっています。

(前提条件)
一般利用者向けアプリと管理者向けアプリの2つのアプリケーションを管理するとします。
一般利用者向けアプリは「public」というアプリ名、
管理者向けアプリは「admin」というアプリ名とします。
CakePHPのバージョンは2.0です。

1.フォルダ構造の変更
まず、フォルダ構造を変更します。

<変更前のCakePHPフォルダ構造>
CakePHP2.0
├─app (アプリケーションフォルダ)
│ ├─Config
│ ├─Console
│ ├─Controller
│ ├─Lib
│ ├─Locale
│ ├─Model
│ ├─Plugin
│ ├─Test
│ ├─tmp
│ ├─Vendor
│ ├─View
│ └─webroot (ドキュメントルート)
├─lib
│ └─Cake
├─plugins
└─vendors

<変更後のCakePHPフォルダ構造>
CakePHP2.0
├─apps
│ ├─admin (管理者者向けアプリ用アプリケーションフォルダ)
│ │ ├─Config
│ │ ├─Console
│ │ ├─Controller
│ │ ├─Lib
│ │ ├─Locale
│ │ ├─Model
│ │ ├─Plugin
│ │ ├─Test
│ │ ├─tmp
│ │ ├─Vendor
│ │ └─View
│ │
│ └─public (一般利用者向けアプリ用アプリケーションフォルダ)
│ ※adminフォルダと構造は同じ

├─lib
│ └─Cake
├─plugins
├─vendors
└─webroot (ドキュメントルート)
├─admin (管理者者向けアプリ用ドキュメントルート)
│ └─index.php

└─public (一般利用者向けアプリ用ドキュメントルート)
└─index.php

2.HTTPサーバのドキュメントルートは「webroot」

3.各アプリ用ドキュメントルート直下のindex.phpを修正
source

4.URLアクセス
一般利用者向けアプリは「http://www.example.com/public」
管理者向けアプリは「http://www.example.com/admin」

画面が表示できたでしょうか。
以上です。ではまた。

インソースマーケティングデザインが書いた他の記事

見積もり・ご依頼など、
お気軽にご相談ください

本サイトはユーザーエクスペリエンスの向上などを目的に、Cookieを使用しています。
右記のバナーで「同意する」をクリックする、または本サイトを利用することにより、
お客様は弊社のCookieポリシーに同意したことになります。

同意します