■ユーザーズフォーラム リニューアルのお知らせ
新規投稿は新ユーザーズフォーラムにお願いします。

3.0.2→3.0.4にアップデートできない

dotnetxp > 3.0.2→3.0.4にアップデートできない @ 2014/8/6 16:36
3.0.2のlib/Baser,lib/Cakeに、3.0.4のlib/Baser,lib/Cakeフォルダを上書きし、アップデートを実施しています。
しかし、http://{baserCMSの設置URL}/updateから「アップデートを実行」すると、すぐさま404エラー(CSSが効いていない状態でヘッダ部分だけ表示)となりアップデートできません。
また、その後、サイト自体のコンテンツが404エラー、CSSも無効となり正常表示ができなくなります。
バックアップしておいた3.0.2のlib/Baser,lib/Cakeに戻すと正常化します。
以上の通り、アップデートが正しく行えない状況です。解決策をご教授ください。

■BaserCMSのバージョン:4.0.10.1
■スマートURLの利用:ON
■設置フォルダ:ドキュメントルート
■PHPスキル(自己評価):C
■OSの種類:Ubuntu 14.04.2 LTS
■PHP/DBのバージョン:5.5.9/MySQL 5.5.54

4260 > Re: 3.0.2→3.0.4にアップデートできない @ 2014/8/6 19:06
私もできませんでした。
エラー内容が違うので同じ症状ではないかもしれませんが。。。

エラー: The requested address '/index.php/updateindexindex' was not found on this server.

■ BaserCMSのバージョン:3.0.6.1
■ レンタルサーバー名:
■ スマートURLの利用: ON
■ 設置フォルダ: ドキュメントルート
■ 利用しているデータベース: PostgreSQL
■ PHPスキル: D

well > Re: 3.0.2→3.0.4にアップデートできない @ 2014/8/6 19:47
こんにちは。
私も4260さんと同じ症状です。
参考までに。

■ BaserCMS:3.0.6.1
■ サーバー名:CentOS 6.5 on VirtualBox(PHP 5.4.x / MySQL 5.5.x)
■ スマートURL:ON
■ 設置フォルダ: [ドキュメントルート]
■ PHPスキル:C
■ IDE:NetBeans7.4

ryuring > Re: 3.0.2→3.0.4にアップデートできない @ 2014/8/6 21:06
こんばんわ。開発メンバーのryuringです。

取り急ぎ、修正パッチを用意しました。
https://github.com/baserproject/basercms/commit/1fa5c4ef2f3068325d3b6f035ab1db98cdfd28f3

また、このパッチを取り込んだ、3.0.5 も同時にリリースしています。
http://basercms.net/download/index.html

3.0.3 と 3.0.4 は、致命的なバグを含むバージョンとして取り下げました。

みなさん、ご迷惑をおかけして申し訳ありません。

Twitter:@ryuring
baserCMS総合サービスサイト ビーコミ

dotnetxp > Re: 3.0.2→3.0.4にアップデートできない @ 2014/8/6 22:03
3.0.2→3.0.5アップデートが正常に行えました。
修正ありがとうございました。

■BaserCMSのバージョン:4.0.10.1
■スマートURLの利用:ON
■設置フォルダ:ドキュメントルート
■PHPスキル(自己評価):C
■OSの種類:Ubuntu 14.04.2 LTS
■PHP/DBのバージョン:5.5.9/MySQL 5.5.54

well > Re: 3.0.2→3.0.4(3.0.5.1も同じ)にアップデートできない @ 2014/8/18 2:02
baserCMS関係者の皆様
いつもお世話になっております。

baserCMSのバージョンアップの問題が落ち着いたように見受けましたので、再度投稿させていただきます。

4260様
下記のご指摘のエラーは解消されたでしょうか?
引用:
私もできませんでした。
エラー内容が違うので同じ症状ではないかもしれませんが。。。

エラー: The requested address '/index.php/updateindexindex' was not found on this server.


私も下記のように、若干異なりますがが同様のエラーが出て解決できず、アップデートを今まで保留にしたままです。

システムエラーです。

エラー: The requested address '/updateindexindex' was not found on this server.

Stack Trace
CORE/Cake/Controller/Component/SecurityComponent.php line 239 → SecurityComponent->blackHole(UpdatersController, string)
[internal function] → SecurityComponent->startup(UpdatersController)
CORE/Cake/Utility/ObjectCollection.php line 128 → call_user_func_array(array, array)
[internal function] → ObjectCollection->trigger(CakeEvent)
CORE/Baser/Event/CakeEventManager.php line 244 → call_user_func(array, CakeEvent)
CORE/Cake/Controller/Controller.php line 675 → CakeEventManager->dispatch(CakeEvent)
CORE/Cake/Routing/Dispatcher.php line 187 → Controller->startupProcess()
CORE/Cake/Routing/Dispatcher.php line 165 → Dispatcher->_invoke(UpdatersController, CakeRequest)
/vagrant/app/webroot/index.php line 151 → Dispatcher->dispatch(CakeRequest, CakeResponse)

※デバッグモードは、0と1を両方試しました。


何らかの解決の糸口がお分かりになる方がいらっしゃいましたら、どうかご回答をよろしくお願いいたします。


参考までに、常時出力させている
<?php var_dump($this->request->data) ?>
<?php var_dump($this->request->params) ?>

の結果を掲載しておきます。


***** <?php var_dump($this->request->data) ?> *****

array (size=2)
  '_Token' => 
    array (size=3)
      'key' => string '**************************************' (length=40)
      'fields' => string ****************************************Installation.update' (length=62)
      'unlocked' => string '' (length=0)
  'Installation' => 
    array (size=1)
      'update' => string '1' (length=1)


***** <?php var_dump($this->request->params) ?> *****

array (size=7)
  'plugin' => null
  'controller' => string 'updaters' (length=8)
  'action' => string 'index' (length=5)
  'named' => 
    array (size=0)
      empty
  'pass' => 
    array (size=0)
      empty
  'isAjax' => boolean false
  'models' => 
    array (size=4)
      'Page' => 
        array (size=2)
          'plugin' => null
          'className' => string 'Page' (length=4)
      'SiteConfig' => 
        array (size=2)
          'plugin' => null
          'className' => string 'SiteConfig' (length=10)
      'Updater' => 
        array (size=2)
          'plugin' => null
          'className' => string 'Updater' (length=7)
      'Plugin' => 
        array (size=2)
          'plugin' => null
          'className' => string 'Plugin' (length=6)



■ BaserCMS:3.0.6.1
■ サーバー名:CentOS 6.5 on VirtualBox(PHP 5.4.x / MySQL 5.5.x)
■ スマートURL:ON
■ 設置フォルダ: [ドキュメントルート]
■ PHPスキル:C
■ IDE:NetBeans7.4

n1215 > Re: 3.0.2→3.0.4(3.0.5.1も同じ)にアップデートできない @ 2014/8/18 12:39
well 様

こんにちは。
私も3.0.4へのアップデート試行時に同様のエラーに遭遇しましたが、3.0.5.1での改善を確認しています。

3.0.5.1ではアップデート用の処理においてSecurityComponentの検証を丸ごとオフにしているので、
この問題は再現しないのではないかと思うのですが、もしかするとチェック漏れがあるのかもしれませんね。


検証にあたって、まずは1つの根本的な原因の可能性をつぶしたいと思います。
何らかの理由でlib/ディレクトリ以下が3.0.5.1のファイルで上書きされていないという可能性です。


アップデートが正常に行えていない問題に対する修正がこちらになります。
https://github.com/baserproject/basercms/commit/1fa5c4ef2f3068325d3b6f035ab1db98cdfd28f3

正常に修正が適用されていれば
lib/Baser/Controller/BcAppController.php 270〜274行目あたり

		// TODO 管理画面は送信データチェックを行わない(全て対応させるのは大変なので暫定処置)
		if (!empty($this->request->params['admin']) || Configure::read('BcRequest.isUpdater')) {
			$this->Security->validatePost = false;
			$this->Security->csrfCheck = false;
		}

となっているはずですが、確認していただけますか?
なお、修正前はこの部分のコードは419〜423行目に配置されていたようです。

Twitter: @n_1215

well > Re: 3.0.2→3.0.4(3.0.5.1も同じ)にアップデートできない @ 2014/8/18 17:22
n1215様、
いつもお世話になっております。
早速ご回答いただきありがとうございます。

引用:

検証にあたって、まずは1つの根本的な原因の可能性をつぶしたいと思います。
何らかの理由でlib/ディレクトリ以下が3.0.5.1のファイルで上書きされていないという可能性です。


アップデートが正常に行えていない問題に対する修正がこちらになります。
https://github.com/baserproject/basercms/commit/1fa5c4ef2f3068325d3b6f035ab1db98cdfd28f3

正常に修正が適用されていれば
lib/Baser/Controller/BcAppController.php 270〜274行目あたり

		// TODO 管理画面は送信データチェックを行わない(全て対応させるのは大変なので暫定処置)
		if (!empty($this->request->params['admin']) || Configure::read('BcRequest.isUpdater')) {
			$this->Security->validatePost = false;
			$this->Security->csrfCheck = false;
		}

となっているはずですが、確認していただけますか?
なお、修正前はこの部分のコードは419〜423行目に配置されていたようです。


3.0.5.1へのアップデート後のlib/Baser/Controller/BcAppController.phpを確認してみますと
ご指摘の通り、270〜274行目に該当ソースがありました。

ちなみにアップデート前の3.0.2のlib/Baser/Controller/BcAppController.phpを確認してみますと
ご指摘の箇所と若干異なり、410〜414行目に赤字の加筆部分のない該当ソースを見つけました。

以上です。
よろしくお願いいたします。

■ BaserCMS:3.0.6.1
■ サーバー名:CentOS 6.5 on VirtualBox(PHP 5.4.x / MySQL 5.5.x)
■ スマートURL:ON
■ 設置フォルダ: [ドキュメントルート]
■ PHPスキル:C
■ IDE:NetBeans7.4

n1215 > Re: 3.0.2→3.0.4(3.0.5.1も同じ)にアップデートできない @ 2014/8/18 22:21
well 様

アップデート前にbaserCMSコアは3.0.5.1のファイルにしっかりと修正されているにもかかわらずSecurityComponentに引っかかるってことですね。

app/Controller/BcAppController.phpによって
baserCMSコアのBcAppControllerの動作を上書きしているということはないでしょうか?


これが原因でなければ地道に変数を確認してみるしかないですね。

lib/Baser/Controller/BcAppController.php 270〜274行目の下にデバッグ用のコードを追記して
/updateでボタンを押してアップデートの処理を実行したときに画面の上部に何が表示されるか見てもらえますか?(true/falseが3つか6つ表示されると思いますが)

		// TODO 管理画面は送信データチェックを行わない(全て対応させるのは大変なので暫定処置)
		if (!empty($this->request->params['admin']) || Configure::read('BcRequest.isUpdater')) {
			$this->Security->validatePost = false;
			$this->Security->csrfCheck = false;
		}
		var_dump(Configure::read('BcRequest.isUpdater'));
		var_dump($this->Security->validatePost);
		var_dump($this->Security->csrfCheck);

Twitter: @n_1215

well > Re: 3.0.2→3.0.4(3.0.5.1も同じ)にアップデートできない @ 2014/8/18 22:54
n1215様、
ご回答ありがとうございます。

引用:

app/Controller/BcAppController.phpによって
baserCMSコアのBcAppControllerの動作を上書きしているということはないでしょうか?
[/code]


このご指摘でハッと思い出しました。
まさに、ご指摘通り、
app/Controller/BcAppController.phpによって
baserCMSコアのBcAppControllerの動作を上書きしています。

たしか、Debugkitを導入するのに、下記の記事のプラグインフックの方法を試してみたところ、
http://basercms.net/develop/archives/5
なぜかうまくいかず、諦めて
BcAppController.phpの$components = array()に直に'DebugKit.Toolbar'を追加するために
コアファイルからapp/Controller/BcAppController.phpにコピーしていました。

おかげさまで無事、アップデート完了出来たようです(動作の精査はこれからになりますが)。

n1215様、
誠にありがとうございました。

■ BaserCMS:3.0.6.1
■ サーバー名:CentOS 6.5 on VirtualBox(PHP 5.4.x / MySQL 5.5.x)
■ スマートURL:ON
■ 設置フォルダ: [ドキュメントルート]
■ PHPスキル:C
■ IDE:NetBeans7.4

ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
20 人のユーザが現在オンラインです。 (19 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 20