ログインとログアウト後のページについて

2012年6月8日 at 4:03

初めまして、concrete5に新たに手を出した"なま"と申します。
これから多々お世話になると思いますのでよろしくお願いします。

早速ですが、管理者以外の一般ユーザーがログインした場合、システムで指定したページに移動するよう設定しましたが、ログインをするとログインページから返答もなければ変わらない状態です。
一見ログインができていないように見えるのですが、トップページに戻るとログインされている状態である事がわかります。
これはどうしたら指定したページに飛ぶようにできるでしょうか?

続いてログアウトについてですが、ログイン中各ページのフッターに表示されている「ログアウト」を押すと500 Server Errorになってしまいます。
ちなみにトップページに戻ると正常にログアウトができているようです。

サーバーは、CoreServerを利用しています。
concreteのバージョンは5.5.2.1です。

このほか必要な情報があったら教えてください。
よろしくお願いします。

タグ:

Re: ログインとログアウト後のページについて

2012年6月8日 at 11:29
concrete/libraries/controller.php をダウンロードし、下記の修正を行ったうえで、 libraries/controller.php にアップロードしてください。

▼修正前
public function redirect() {
$args = func_get_args();
$url = call_user_func_array(array('View', 'url'), $args);
if ($url == '') {
$url = BASE_URL . DIR_REL;
}
header("Location: " . $url);
exit;
}



▼修正後
public function redirect() {
$args = func_get_args();
$url = call_user_func_array(array('View', 'url'), $args);
if (($url == '') || ($url == "/")) { // ←ココを変更
$url = BASE_URL . DIR_REL;
}
header("Location: " . $url);
exit;
}


その他、Core Serverとconcrete5は非常に相性が悪く多々トラブルが当フォーラムに投稿されていますので、一度検索されることをおすすめします
 

Re: ログインとログアウト後のページについて

2012年6月8日 at 16:13
お世話になっております。

CoreServerでは今後もトラブルに付きまとわれるであろうと思いましてロリポップにて現在テスト運用しております。

ロリポップにマニュアル通り設置したところ同じ現象が発生しました。
そこでご指導いただいた通り修正を行ったところ、ログアウトはエラーなくトップページに戻るようになりましたが、ログインに関しては相変わらずで・・・

index.php/login/ よりIDとPWを入力しログインボタンを押す。
index.php/login/do_login/ に移りページは内容は変化なし。

トップページに戻るとやはりログインされた状態になります。
その他の方法で「ログイン後スタートページ」で設定したページに飛ぶようにはできないでしょうか?
度々お手数をおかけしますがご指導お願いします。
 

Re: ログインとログアウト後のページについて

2012年6月8日 at 17:58
ログイン後スタートページを「ホームページ」に変更して動作するか確認いただけますでしょうか。
 

Re: ログインとログアウト後のページについて

2012年6月9日 at 11:20
今さきほど、自分のロリポでのサイトいくつかのサイトで確認してみました。

http://ise-guesthouse.com/
http://yuko-ota.com/
http://murakaminobuo.com/
http://concrete5nagoya.org/

ロリポでも問題なく動いています。
何か、nama さんの方で、設定が間違っていたり、追加アドオンが悪さしているなど可能性があるかもしれません。

特に、考えられるのは、ログインの部分を修正され、
/single_pages/ にログインファイルが存在し、アップグレード後にそこの部分もアップグレードに対応しなければいけないので、更新していないということなどが考えられます。

他にも、concrete5 自体のサーバーへのアップロードのミス。
PHP.ini の設定の間違い・・・などが考えられます。

ロリポップの場合、php.ini の設定は
http://lolipop.jp/manual/blog/concrete5/
に書いてあります。

ここの設定もきちんと行なっているかの確認をお願いします。