登録日
2010年10月17日

メンバー検索

  

keeztha

名前(ニックネーム)
keeztha
自分のconcrete5サイト
ホームページ
http://www.flowplus.jp/
自己紹介
2010年9月に初めてconcrete5の存在を知りました。自分がCMSで実現したいと思っていた以上のことが可能となっており、感激しています。
concrete5.org のユーザー名
concrete5 Slack Team ID
Twitterアカウント
フォーラム総投稿数
17

コミュニティバッジ

投稿

11から17までを表示 (計17)

ミニバード「移転前動作確認URL」でのconcrete5環境構築について

ミニバードには「移転前動作確認URL」という機能があって、ネームサーバーがまだミニバードに切替できていない状態でも、「 http://sv0.minibird.netowl.jp/mydomain.com/ 」といったURLで、FTPアップロードしたhtmlファイルの動作(表示)確認をすることができます。
(参考 http://www.minibird.jp/man/guide_transfer.php

この「移転前動作確認URL」は、あくまで静的なhtmlの表示確認を行うというレベルのもののようで、CMSツールでこれを使うのは少々無理がある感じでした。
(私は、移転前動作確認URL環境でWordPressの環境構築をすることは断念しました・・・)


ただconcrete5については、(標準ですと)サイトのURLを管理しているのは「(concrete5_root)/config/site.php」の一ヶ所のみとなっているようであり、何とか下記の手順を行うことができました。
1)移転前動作確認URL環境でconcrete5をインストール
2)テーマ、ページやブロックなどを追加して、一通りのWebページを作成。クライアントの確認。
3)独自ドメインでの運用に切り替えるための設定準備。
4)ネームサーバーをミニバードに切り替えて独自ドメインでの運用を開始



とはいえ、やっぱり上記3の作業が発生してしまいますので、あまりお薦めはできません・・・。

今回、私が使用したブロックは「記事」「HTMLコード」「オートナビ」「画像」「フォーム」と標準的なものばかりで、特殊なブロックは使用しなかったので切替が成功した、という面もあると思います。
事前に環境構築してから切替したい場合は、可能であればcoreserverを使用した方が良いような気がしました。(「pre.mydomain.com」でconcrete5インストール → Webページ作成・確認 → 「/config/site.php」の変更 → 管理画面のファイルマネージャーでディレクトリ名を「pre.mydomain.com」から「www.mydomain.com」にリネーム、といった感じ)


それでもミニバードで実施せざるを得ない場合は、あくまで自己責任で以下をご参考にしてください。
全ての方にあてはまるかどうかは分かりません。
また、返信をいただいてもフォローは出来ないと思いますが、ご了承ください。


-*-*-*-


■ミニバードの「移転前動作確認URL」でインストールする手順

★ご注意★
下記は、独自ドメインやサブドメインの移転前動作確認URLにインストールするケースです。
「独自ドメインのサブディレクトリ(http://sv0.minibird.netowl.jp/mydomain.com/concrete5/ など)」にインストールする場合は、下記の手順ではダメな可能性が高いです。



前のスレッド「独自ドメインでconcrete5をインストールする手順」をベースに、変更点を記載していきます。

<事前準備>
1)「ミニバード・サーバ管理ツール>ドメイン設定>ドメイン追加」で、最終的に切り替える予定の独自ドメインについて、ドメイン追加を行います。
2)(サブドメインを使用しない場合はこの項目はスキップ)最終的にサブドメインで運用する場合は、「ミニバード・サーバ管理ツール>サブドメイン設定」で、そのサブドメインを追加します。
3)「ミニバード・サーバ管理ツール>移転前動作確認URL」で、対象のドメイン名もしくはサブドメイン名について、「確認URLの追加」を行います。
※確認URLの追加をしても、「http://sv0.minibird.netowl.jp/mydomain.com/」といったURLで表示されるようになるには数時間掛かるようです。

*****

<データベース作成>
<concrete5をFTPでアップロード>
<パーミッションの変更。>
<ミニバード・サーバー管理ツールで php.ini の設定>

これらは、前のスレッド「独自ドメインでconcrete5をインストールする手順」の通りに実施。

*****

<index.phpの修正>

「(concrete5_root)/index.php」を開くと、次のように2行だけ記載されています。
----------
<?php
require('concrete/dispatcher.php');
----------

これを次のように変更します。
ローカルでファイルを修正して、FTPアップロードしてください。すでに同名ファイルがアップロードされているハズなので上書きとなります。

※ $_ENVの方は設定しなくても問題ない気もしましたが、念のために設定しました。
----------
<?php
if(!is_null($_SERVER['HTTP_X_FORWARDED_HOST'])) {

$myDomain_HTTP_HOST = $_SERVER['HTTP_HOST'];
$minibird_HTTP_HOST = $_SERVER['HTTP_X_FORWARDED_HOST'];

$_SERVER['HTTP_HOST'] = $minibird_HTTP_HOST;
$_ENV['HTTP_HOST'] = $minibird_HTTP_HOST;

$_SERVER['SERVER_NAME'] = $minibird_HTTP_HOST;
$_ENV['SERVER_NAME'] = $minibird_HTTP_HOST;

$renewal_SCRIPT_NAME = '/'.$myDomain_HTTP_HOST.$_SERVER['SCRIPT_NAME'];
$_SERVER['SCRIPT_NAME'] = $renewal_SCRIPT_NAME;
$_ENV['SCRIPT_NAME'] = $renewal_SCRIPT_NAME;

$renewal_ORIG_SCRIPT_NAME = '/'.$myDomain_HTTP_HOST.$_SERVER['ORIG_SCRIPT_NAME'];
$_SERVER['ORIG_SCRIPT_NAME'] = $renewal_ORIG_SCRIPT_NAME;
$_ENV['ORIG_SCRIPT_NAME'] = $renewal_ORIG_SCRIPT_NAME;

$renewal_REQUEST_URI = '/'.$myDomain_HTTP_HOST.$_SERVER['REQUEST_URI'];
$_SERVER['REQUEST_URI'] = $renewal_REQUEST_URI;
$_ENV['REQUEST_URI'] = $renewal_REQUEST_URI;

$renewal_PHP_SELF = '/'.$myDomain_HTTP_HOST.$_SERVER['PHP_SELF'];
$_SERVER['PHP_SELF'] = $renewal_PHP_SELF;
}

require('concrete/dispatcher.php');
----------

*****

<インストール実行>

移転前動作確認URL( http://sv0.minibird.netowl.jp/mydomain.com/ など)にアクセスし、concrete5のインストール画面が表示されたら、ここまでの手順は成功していると思います。
あとは「独自ドメインでconcrete5をインストールする手順」の記載内容に従って、インストールを実行してください。

もしも、スタイルシートが適用されていないなど、表示がおかしい場合は、上記<index.phpの修正>が正しくない可能性がありますので再確認してください。


インストールが完了すれば、管理メニューの表示やページの追加・修正が可能となります。

*****

<プリティーURLの設定>

インストールが完了し管理メニューにログインできましたら、プリティーURLの設定を行うことができます。
http://concrete5-japan.org/help/faq/how_to_use_prettyurl/

移転前動作確認URLの場合は、管理メニューでプリティーURLの設定を行った後、「.htaccess」に追加するコードの修正が必要となります。
「RewriteBase /mydomain.com/」となっていると思いますが、これを「RewriteBase /」と変更して「.htaccess」に追加してください。

(.htaccessの記載)
----------
# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
# -- concrete5 urls end --
----------

これで、移転前動作確認URLでもプリティーURLが使用できるようになると思います。


-*-*-*-


■移転前動作確認URLでWebページ構築をする際の注意

「移転前動作確認URL」から「独自ドメイン」に切り替える直前に、記事ブロックやHTMLコードブロック内に記載されている「サイト内へのリンク」の部分は修正する必要があります。
この修正箇所が多いと切替時の作業負荷が高くなってしまいますので、ご注意ください。
画像ブロックやオートナビブロックは、切替時の修正は不要でしたので、切替時点まではこれらで代替することも検討してみてください。

○切替時に修正が必要な箇所の例
 ・記事ブロック内の「サイト内へのリンク」や「画像ファイル(へのリンク)」の部分
 ・HTMLコードブロック内の「サイト内へのリンク」や「画像ファイル(へのリンク)」の部分

※画像ブロックによる画像ファイルへのリンクは、動的にリンクが生成されるようで修正不要でした。
※オートナビブロックも修正不要でした。


-*-*-*-



■移転前動作確認URL→独自ドメインへの切替手順

必須の作業は「/config/site.php」の2行を変えるだけです。



<各ブロックの「サイト内へのリンク」部分の修正>

例えば「/mydomain.com/events/」となっている内部リンクを「/events/」に変更する作業を行います。
記事ブロックですと、htmlボタンでhtmlコードを表示させて修正して行きます。
修正後は、ネームサーバーが切り替わるまでは、正しく表示されなくなります。

対象となるのは、記事ブロック、HTMLコードブロック、などです。
画像ブロックやオートナビブロックは、基本的に大丈夫でしたが、デザイン機能で背景画像を指定していたりすると、内部リンクを使用していますので対応が必要になります。

それ以外のブロックも含め、ご自身で要否を確認してください。

なお、この作業を行わないと切替できないということではありませんので、切替後に表示がおかしいところ/リンクが切れているところを修正していく、という手順でも構わないと思います。(状況が許せば、ですが)

*****

< (concrete5_root)/config/site.php の変更>

★これを行うと、もうネームサーバー切替まではconcrete5にログインができなくなります。
★また、この記述が失敗していますと(「'」が抜けていた、など)切替後も正しく表示されませんのでご注意ください。


変更前は次のようになっていると思います。
----------
define('BASE_URL', 'http://sv0.minibird.netowl.jp');
define('DIR_REL', '/mydomain.com');
----------

これを次のように修正して、FTPで上書きアップロードします。
----------
define('BASE_URL', 'http://www.mydomain.com');
define('DIR_REL', '');
----------
※上記「http://~」の「:」は、わざと全角にしてありますので、そのままコピーしないように。

*****

< (concrete5_root)/sitemap.xml の変更>

<loc>要素の中身を「http://www.mydomain.com~」に変更します。

これはもしかすると、独自ドメインへの切替後に、concrete5管理ツール>システム&メンテナンス>ジョブ>「サイトマップファイルを作成」のジョブを実行するだけで、十分かもしれません。

*****

以上の作業を行ったうえ、ネームサーバーの変更が完了~反映されれば、独自ドメインでconcrete5のWebサイトが表示されるようになると思います。
表示されるようになりましたら、各ブロックの「サイト内へのリンク」部分の修正に漏れや間違いがないか、画像表示の確認とリンクのチェックを行ってください。


-*-*-*-


以上、長くなってスイマセン。

Posted on 11月 06, 2010 at 4:05 午後

独自ドメインでconcrete5をインストールする手順

ご参考までに、ミニバードにconcrete5をインストールするときの私の手順書をアップしておきます。
少々長いですが、お役に立てば。


<事前準備>
対象の独自ドメインのアクセス( http://www.mydomain.com/ )でミニバードのサーバ上のファイルが表示されるようにしておきます。
(ミニバードサーバ管理ツール>ドメイン設定など)
また、サブドメイン( http://concrete5.mydomain.com/ など)で使用する場合は、「ミニバードサーバ管理ツール>サブドメイン設定」も行います。

-----

<データベース作成>

1)ミニバード「サーバ管理ツール」にログイン。

2)左側のメニューから「データベース設定」を選択。

3)まず「MySQLユーザ設定」のタブを選択し、専用ユーザを作成します。
・任意の「MySQLユーザ名」と「パスワード」を入力し、ユーザを追加する。
・ユーザ名は「(アカウント名)_(任意の文字列)」という形式となり、合計で16文字までの制限があるようです。
・パスワードは「半角アルファベット1文字以上を含む半角英数字」とのこと。アンダーバーやその他記号はNGの模様。セキュリティを考慮し16桁くらいは設定した方が良いかもしれません。32桁でも大丈夫でした。

4)次に「MySQL追加」のタブを選択し、専用データベースを作成します。
・データベース名もユーザ名と同様、「(アカウント名)_(任意の文字列)」という形式となります。
・文字コードは「UTF-8」を選択。

5)続いて「MySQL一覧」のタブを選択し、データベースにMySQLユーザを登録する処理を行います。
・「権限追加可能ユーザ」のプルダウンメニューから、上記3で作成したユーザを選択し、『権限追加』ボタンを押下。

6)「MySQL一覧」の下部に表示されている「MySQLホスト名」をメモしておきます。

(以下、7~9は確認作業です)

7)次に「phpmyadmin」のタブをクリックします。するとブラウザの別ウィンドウが開かれ、ユーザ名とパスワードを要求するダイアログが表示されるので、上記3で作成したユーザ名とパスワードを入力します。

8)最初に表示されるメインページで、「MySQL の文字セット:UTF-8 Unicode (utf8) 」「MySQLの接続照合順序:utf8_general_ci」となっていることを確認します。

9)確認できたら、phpMyAdminのページを閉じて、データベースの作業は終了です。

-----

<concrete5をFTPでアップロード>

http://concrete5-japan.org/help/install/gettingready/ の5の作業です。
アップロード先は、独自ドメインエリアのルート、サブディレクトリ、サブドメインエリアのルートなど、用途に応じて指定してください。

なおFTPアップロード時のパーミッションの設定は、下記のページの「パーミッション」の項を参考にしてください。
http://www.minibird.jp/man/homepage_base.php

-----

<パーミッションの変更。>

http://concrete5-japan.org/help/install/gettingready/ の6の作業です。

フォルダについては全て「属性:705」でアップしていると思いますので、特に変更は不要です。

FTPソフトで、「 /concrete/libraries/3rdparty/htmldiff.py 」の属性を「705」に変更します。

-----

<ミニバード・サーバー管理ツールで php.ini の設定>

1)ミニバード「サーバ管理ツール」にログインします。

2)左側のメニューから「PHP環境設定」を選択してください。

3)対象ドメイン名の選択ボタンを押下。

4)「php.ini設定変更」のタブを選択し、下記の項目について設定を変更します。
・mbstring.language = neutral
・mbstring.internal_encoding = UTF-8
・mbstring.http_output = UTF-8
・mbstring.encoding_translation = On
★ページ下部の『設定する(確認)』ボタンを押下した後、その次の画面は確認画面です。さらにそのページ下部の『設定する(確定)』ボタンを押下しないと、設定は変更されませんのでご注意ください。

-----

<インストール実行>

concrete5をアップしたディレクトリへアクセスし、下記の値を入力してインストール実行します。

○サーバーアドレス:データベース作成の6で記録した「MySQLホスト名」を入力します。
○MySQLユーザー名、MySQLパスワード:データベース作成の3で設定した「ユーザ名」と「パスワード」を入力します。
○データベース名:データベース作成の4で設定した「データベース名」を入力します。

-----

以上でインストールは完了すると思います。

必要に応じて、引き続いてプリティURLの設定などを行ってください。
http://concrete5-japan.org/help/faq/how_to_use_prettyurl/

Posted on 11月 06, 2010 at 1:15 午後

現時点で稼働に問題はありません

2010年11月時点で、私が利用しているミニバード・サーバの環境は次の通りです。

PHP:バージョン5.1.6
MySQL:バージョン5.0.77

PHPのバージョンが5.2.0未満ですが、現在までのところ、特に不便は感じていません。


「php.ini」はFTPで配置しても読み込まれていない様子ですが、ミニバードのサーバ管理ツールに「PHP環境設定」という機能があり、それでphp.iniの一通りの設定ができます。
(ただし、php.iniの全ての設定変更が可能かは不明です)

「.htaccess」は有効のようです。

プリティーURLも機能しています。


以上、ご報告です。

Posted on 11月 06, 2010 at 12:41 午後

ミニバード(minibird)

「ミニバード(minibird)」についてのスレッドです。
http://www.minibird.jp/

運営会社ネットオウルの上位サーバ「ファイアバード(FIREBIRD)」についても、動作などはほぼミニバードと同様かと思いますが、トラブル時などは専用スレッドを立てていただいた方が良いかと思います。


2010年11月現在で、ミニバードの「動作確認済みプログラム」の中にconcrete5も含まれています。
http://www.minibird.jp/service/function.php

Posted on 11月 06, 2010 at 12:29 午後

Re: Re: jQuery.noConflict() の設定をすると正常に動作しない

prototype.jsの「$」の方を置き換えるという方法もあるのですね。
ありがとうございます。

prototype.jsの方を置換する場合もすべての「$」を「$$$」に置換しなければいけないようなので、置換の『手間』だけを見るとJQueryの「$」を置換する場合とあまり変わらないかもしれませんが、JQueryはconcrete5の管理ツールで多用されていることを考えると、prototype.jsの方を置換する方が無難のようですね。

参考にさせていただきます。

Posted on 11月 06, 2010 at 12:03 午後

jQuery.noConflict() の設定をすると正常に動作しない

これはバグとまで言えるかどうか分かりませんが・・・

オリジナルのテーマで使用しているJQueryの記述の部分を、
 -----
 jQuery.noConflict();
 jQuery(document).ready(function($){~
 -----
と変更したところ、編集画面に入れなくなってしまいました。


<症状>
localhostの場合は、画面上部のツールバー(「編集モード」ボタンや「新規ページ」ボタンが表示されいているエリア)が表示されなくなってしまいました。
サーバの場合はツールバーは表示されたのですが、「編集モード」ボタンをクリックしたところ、待機イメージがずっとグルグル回り続けるばかりで編集モードに切り替えることができませんでした。
(localとサーバの挙動が異なる点は不明です)


<原因>
コアの「/concrete/js」ディレクトリにあるJavascriptファイルを見たところ、JQueryオブジェクトとして「$」を多用しているようでしたので、正常に動作しなくなってしまうのはまぁ当然かと。


<暫定対応>
今回は、JQueryオブジェクトが「$」のままでも対応できるので、「jQuery.noConflict()」の記述は削除して「$」に戻しました。
しかし今後もしも、オリジナルのテーマでこれまで使っていた prototype.js を活用したい等、「jQuery.noConflict()」を設定する必要がでてきた場合には、「/concrete/js」のJavascriptファイルを全て「$ → JQuery」に置換した形でオーバーライドするしかないでしょうか・・・。


<要望>
できれば、コアの「/concrete/js」のJavascriptファイルで「$ → JQuery」などに変更しておいていただきたいなぁと思います。


※なお、上記の見立てが間違っていましたら、ご返信ください。

Posted on 10月 31, 2010 at 5:41 午後

ページタイプ編集画面で「子ページの設定」をした時の表示ページ名が最新でない

どこの部分を指しているのか分かりにくいかもしれませんので、再現するための手順を記載します。

1)concrete5にログインします。
2)テスト用に新規にページを作成します。
○ここでは例として、home直下に「ページタイプ:右サイドバー/日本語名:テスト01/ページリンク:test」というページを作成します。
3)引き続いて、作成したページの日本語名「テスト01」を「テスト02」に変更します。(ページ編集画面の「設定」ボタンより変更し、編集モード終了)
4)管理画面を表示。
5)左側メニューの「ページとテーマ」を選択。
6)右側メインエリア上部の「ページタイプ」を選択。
7)表示されるページタイプのうち、「右サイドバー」の『デフォルト』ボタンをクリック。
8)すると、選択したページタイプが別ウィンドウ(別タブ)で表示されます。
9)そこで画面左上の「編集モード」ボタンをクリックすると、そのページタイプの編集を行うことができます。
 ※タイトルの「ページタイプ編集画面」とは、この画面を指しています。
10)この画面で、任意のブロックを任意の位置に、新規追加します。
11)そのブロックが新規に追加されましたら、そのブロックをクリックするとメニューが表示されますので「子ページの設定」を選択します。
12)すると、このページタイプを使用しているページの一覧が表示され、この新規ブロックの追加を適用させるページを選択することができます。

この「使用ページ一覧」で表示されるページ名が、新規ページ登録時点の「テスト01」となってしまっており、上記3で行った「テスト02」へのページ名の変更が適用されていない状態になっています。



これは多分、バグだろうと思っています。
オリジナルのバグなのか、日本語版のバグなのかは不明ですが・・・。


私が使用している時はページ名を変更する場合も多く、今後はページ名を入れ替えるシーンも出てくるかもしれません。(日本語名の入れ替えができるのかは未確認ですが)
そうしたときに、ちょっと「子ページの設定」で適用先を間違えてしまいそうなので注意が必要です。



以上、ご報告まで。

Posted on 10月 26, 2010 at 5:28 午後
« 前12次 »