サイトをアップさせようとしての失敗

2014年2月7日 at 11:59

はじめまして、初心者なのですがconcrete5を使ってHPをなんとか作り上げサーバーにアップしようとしたところ、下記のエラーが出てログインができなくなってしまいました。復旧可能でしょうか?

ドメインキングのサーバー上でグーグルクロームを使ってconcrete5.6.2.1.jaにより作り上げました。
サイトのアップの仕方がわからず、httpdocs内でconcrete5のフォルダー内にあるindex.phpやtext等やfilesフォルダ、dispatcher.phpをconcrete5から出してhttpdocsに移動させて戻してを試していたところ、ログイン出来なくなってしまいました。どなたか、わかりますでしょうか?

Fatal error: Uncaught exception 'ADODB_Exception' with message 'mysql error: [1054: Unknown column 'cPendingAction' in 'field list'] in EXECUTE("select Pages.cID, Pages.pkgID, Pages.cPointerID, Pages.cPointerExternalLink, Pages.cPointerExternalLinkNewWindow, Pages.cFilename, Collections.cDateAdded, Pages.cDisplayOrder, Collections.cDateModified, cInheritPermissionsFromCID, cInheritPermissionsFrom, cOverrideTemplatePermissions, cPendingAction, cPendingActionUID, cPendingActionTargetCID, cPendingActionDatetime, cCheckedOutUID, cIsTemplate, uID, cPath, Pages.ctID, ctHandle, ctIcon, ptID, cParentID, cChildren, ctName, cCacheFullPageContent, cCacheFullPageContentOverrideLifetime, cCacheFullPageContentLifetimeCustom from Pages inner join Collections on Pages.cID = Collections.cID left join PageTypes on (PageTypes.ctID = Pages.ctID) left join PagePaths on (Pages.cID = PagePaths.cID and PagePaths.ppIsCanonical = 1) where Pages.cID = '5'") ' in /var/www/vhosts/aphrodite.ne.jp/httpdocs/concrete5/concrete/libraries/3rdparty/adodb/ad in /var/www/vhosts/aphrodite.ne.jp/httpdocs/concrete5/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php on line 78

タグ:

Re: サイトをアップさせようとしての失敗

2014年2月7日 at 16:41
cPendingActionというカラムがデータベースに存在しないというエラーですが、concrete5.6.2.1にはそのようなデータベース定義がありません…。何かアドオンを追加しましたか?
 

Re: サイトをアップさせようとしての失敗

2014年2月7日 at 17:27
こちらのモザイクギャラリーを追加しました。
http://www.concrete5.org/marketplace/addons/mosaic-gallery/
その他無料のものをダウンロードしたりしてますが、HPには使用しておりません。
 

Re: Re: サイトをアップさせようとしての失敗

2014年2月7日 at 18:36
モザイクギャラリーはこちらのサイトになります。
http://c5extras.com/add-ons/
 

Re: サイトをアップさせようとしての失敗

2014年2月7日 at 19:05
僕がよく分かってないのかもしれませんが、
ドメインキングのサーバー上でつくられたのなら、すでにアップされている状態ではないかいと思います。
サイトのアップとはどのようなことをされたのですか?

xxxx.com/concrete5 からxxxx.com のように されるのであれば、
httpdocs/concrete5ディレクトリの中を全て、httpdocsに移動する必要があると思います。
 

Re: サイトをアップさせようとしての失敗

2014年2月7日 at 20:26
サイトはアップされていたのかもしれません。
既にxxx.com(旧HP)が存在し、xxx.com/concrete5(新しいHP)に書き換えをしようとしてました。

httpdocs/concrete5のディレクトリからphpだけとりだしてhttpdocsに移せばよいのかと思い、index.phpやdispatcher.phpを出し入れして試していたら、エラーが出てログイン出来なくなってしまいました。

おっしゃるように、concrete5ディレクトリの中身すべてを移動させれば良かったのですね。

しかしながら、時すでに遅しで、出し入れの最中に何かが変わってしまったものだと思います。
 

Re: Re: サイトをアップさせようとしての失敗

2014年2月9日 at 1:36
難しいかもしれませんが、下記の方法で修復するかもしれません。
(確実に修復する方法ではありませんので、自己責任でお願いします。)

httpdocs 以下のディレクトリ、ファイルをすべてバックアップします。
httpdocs に 新しい concrete5 を アップロードします。
そのディレクトリに 作ったサイト 当初のconcrete5ディレクトリ内
config/site.php
files ディレクトリ
packages ディレクトリ
を 新しいconcrete5 の 同じディレクトリにアップロードします。
ブラウザよりxxx.com で アクセス。

これで修復できるかもしれません。
手順や、アップするディレクトリが違うとうまく動きませんので、不明点があれば作業される前にご質問頂ければと思います。
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 12:32
SDにhttpdocs/concrete5を移動させようとしましたがphpが移動できないため
サーバ内の全てを、サバー内でバックアップ取りました。
それとは別にconcrete5/configとfilesとpackaqesをサーバー内に新しいディレクトリを作りコピーしました。

この状態で新しいconcrete5アップロードすればよろしいでしょうか?
また、サーバ内のconcrete5(アプリケーション)を削除する必要はないのでしょうか?

よろしくお願いします。
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 13:35
私、頻繁にサーバーを移動したり、フォルダを変更しています。

基本的には、concrete5をインストールしたフォルダを丸ごとコピーすれば、どこのフォルダでもどこのサーバー(動作条件は満たすことは必要)でも、なにも変更しなくても動きます。

データベースも同じく、どこのサーバー(動作条件は満たすことは必要)にしようが、どんなデータベース名にしても動作します。

ただ、データベースとの関係だけは調整する必要があります。つまり、/config/site.php 内のデータベースサーバー名、データベース名、ユーザ名、パスワードはあたらし環境に合わせてください。

コピーしても動かないとのことですが、私の場合、ftpをめったに使わないせいもあると思うのですが、コピーに失敗というかコピー漏れがあるせいか、いろいろトラブルの経験はあります。つまり、理由はわかりませんが、全部がきれいにコピーされていないのではないかと推察します。
 

Re: Re: サイトをアップさせようとしての失敗

2014年2月9日 at 21:23
新しいconcrete5を入れました。
concrete5/configのsite.phpも行いログインができるようになりました。
次にconcrete5/packagesも入れました。
そしてconcrete5/filesにこれまでのものをコピーして移そうとしましたが、ディレクトリ内にあるbackupsだけが移動することができません。

結果、以前のものは何も反映出来きていません。

ほとんどのfileとpackageが移動できてるので、何かしら反映されてもいいともうのですが、中身は壊れてるのでしょうか?
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 21:39
写真とかファイルマネージャーでアップしたものは、filesに入るのですが、都度固有の番号のフォルダに保存されます。そしてその固有の番号はデータベースに記録されます。

表示の時、まず画像ファイルの番号をデータベースから調べて、実際のファイルを読み込むのです。

したがって、filesをコピーしただけではだめなんです。データベースもコピーしないとファイルの場所がわからないのです、だから復活しません。

現状で、データベースをエクスポートして、新しいほうにインポートしたらどうなりますか?
 

Re: Re: サイトをアップさせようとしての失敗

2014年2月9日 at 22:20
むむ・・・ダメかもしれません。
それは新しいconcrete5を入れたと同時に新しいデータベースもサーバーに存在するということでしょうか?
現在、サーバーには1つデータベースしか存在しません。前回と同じ名前で作りました。(上書きされてしまってるのでしょうか)
それとも当初のconcrete5ディレクトリのなかにデータベースは存在してるのですか?(それならあると思います)

ちなみに当初のconcrete5/filesの中にある画像(ファイルマネージャーに存在した)は見ることができます。
データベースは存在しているということですね?
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 22:37
同じデータベースを指定してインストールしたら、エラーが出るはず。
そのまま上書きでできません。というか上書きしないようになっています。

エラーの後、自分でデータベースを削除(または消去)して作り直さないとインストールできません。

文面からみると、同じ名前で作ったということですから、削除されたと思います。

つまり、残念ながら消えてしまっています。

データベースの場所は、concrete5のフォルダにありません。
だから、concrete5のフォルダと、データベースのコピーが別々に必要なんです。
またデータベースはファイルのコピーでは移動できません。データベースの専用ツールでエクスポートしないと取り出せません。

filesは、データそのものであって、データベースではありません。データです。

データベースがファイルの場所を示しているので、それを消したらconcrete5はファイルの場所がわかりません。

手間ですが、filesをPCにダウンロードして、あらためてアップロードして、各ページのブロックの画像を入れ替えるしかありません。
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 23:08
そうなのですね。
長々とありがとうございます。

concrete5はサバーから一度アンインストールしてから再インストールしておりました。
その際、同じデータベースの名前をつけておりました。

ちなみにこれらを行う前にサーバをバックアップとったのですが、復元しても意味ないのでしょうか?
 

Re: サイトをアップさせようとしての失敗

2014年2月9日 at 23:18
データベースのバックアップがあれば復活できますよ。

とにかく、concrete5のフォルダ全部と、データベース。この2つがあればどこへでも移設できます。
2つなければ無理ですね。
 

Re: サイトをアップさせようとしての失敗

2014年2月10日 at 10:27
重ね重ねありがとうございます。
また、問題がでましたら、ご教授宜しくお願いします。