OneThird CMSではデータベースからパス情報を削除し、複数のサーバーで等しく動く運用を可能としています
ここでは、OneThirdを使った運用をこのサイト(=http://onethird.net) を使ってご紹介します
本番環境(=http://onethird.net)
のデータををローカルPC(http://localhost:8080/onethird/)で編集して、またサーバーにアップロードする方法を解説しています
このサイトの通常URLは
http://onethird.net
で動作していますが、実はhttpsの
https://x-sys.net/onethird
でも全く同じに動作します
そして、基本設定-オプション4の「管理画面は全てHTTPSで通信する (要site_ssl設定)」を有効にしており、httpsでしかコンパネに入れないようにしています
また、https,http両方のURLを受け入れるために、config.phpの設定を以下のように変更しています
※ config.phpの変更点
if ($_SERVER["SERVER_NAME"]=="x-sys.net") { $config['site_path'] = '/var/www/html/onethird'; $config['site_url'] = "https://x-sys.net/onethird/"; $config['site_ssl'] = "https://x-sys.net/onethird/"; $config['files_url'] = "https://x-sys.net/onethird/files/"; $config['site']['cookie_path']='/onethird/'; $config['canonical'] = "http://onethird.net/"; } else { $config['site_path'] = '/var/www/html/onethird'; $config['site_url'] = "http://onethird.net/"; $config['site_ssl'] = "https://x-sys.net/onethird/"; $config['files_url'] = "http://onethird.net/files/"; $config['site']['cookie_path']='/'; }
まずはじめに、OneThird CMSを動作させるServer環境を作ります
これはOneThird Web serverを使います
インストール方法はこちらインストール方法
このサイトの場合、ローカルに素材をコピーすることを避けるため、img.phpを使います
OneThirdのインストールフォルダのimg.phpの6行目のコメントを外し、以下のように書き換えます
//$r = "http://url/files/img/{ $_GET['p']}/{ $_GET['i']}";
→
$r = "http://onethird.net/files/img/{ $_GET['p']}/{ $_GET['i']}";
7行目の die();はコメントアウトします
※ v1.23から素材のバックアップも簡単に行えるようになりました
素材を全てダウンロードする場合は、此の手順はパスしてもOKです
まず、本番環境のデータをダウンロードします
データは4種類あります
1.データベースのバックアップ(zip) ... データベース内のデータ
2.プラグラムバックアップ(program) ... files/1/dataとfiles/1/plugin以下のファイル群
3.テーマバックアップ(theme) ... files/1/data以下のファイル群
4.イメージファイルのバックアップ(image) ... files/img以下のファイル群
この内、1.と2.を実行します
本番環境のURLを開き
システムメニューの「バックアップツール(backup tool)」を選択します
https://x-sys.net/onethird/admin/restore.php?circle=1
Zip backupと、program backupをそれぞれ一回ずつ実行します
そして、バックアップされたzip backupのリンクと、program backupのリンクをそれぞれクリックしてください
その後、テスト環境のバックアップツール
http://localhost:8080/onethird/admin/restore.php?circle=1
を開き
先ほどダウンロードしたファイルをバックアップツールにDropします
Chromeの場合そのままDropできるので便利です
後はアップロードすればOK
同様のプラグラムもアップロードします
ダウンロードした、データとプラグラムをリストアします
といってもワンクリックで実行できます
以上の手順で、本番環境とテスト環境が同じになりました
※ img.phpを使用しない場合、imageのバックアップも行ってください
テスト環境のデータを本番環境に移動するのも手順1,2を逆にするだけです
画像データをアップロードした場合は、画像ファイルのコピーも必要です
image-backupボタンをクリックして、画像のコピーも行ってください
もしSQLiteでの運用の場合は、ローカルのonethird.dbを本番環境にFTPでコピーするだけでもデータベースのコピーができます