2015-11-13 7 views
7

私は古いレガシーcakephp 2アプリをlaravel 5.2に移行するチャレンジの仕事を受け取ります。CakephpとLaravelは共存しています

大規模なアプリケーションであるため、2つは共存して動作する必要があります。すべてのモジュールはlaravelに移行されます。

可能かどうか認証セッションの資格情報を簡単にlaravel認証セッションに移すことができますか?

このプロセスではどのようなトラップが見つかりますか?どのように私はそれらを避けることができますか?

私はこれらのステップを発見した:すでに前にこれをやっhttp://laravel.io/forum/09-08-2014-strategy-for-migrating-a-large-cakephp-project-to-laravel?page=1#reply-28620

誰もが?。

+1

まず、CakePHPアプリをLaravelに移行し、共存すると言いますか?あるCakePHPアプリを移行して、その新しいLaravelアプリを別のCakePHPアプリと共存させるのですか? – Phroggyy

+0

レガシーcakephpアプリの中には、私はlaravelアプリケーションを挿入し、一度に1つずつ、cakephpからlaravelにfuncionalitiesを移行する必要があります。すべての機能がcakephpからlaravelに移行された後、cakephpは無効になり、ただのlaravelが存在します。 –

+2

もっと類似しているためコードの一部を共有できるので、Cake 3にゆっくりと移行する方が簡単でしょう。 –

答えて

3

最も論理的な解決策は、アプリケーション全体を一度にLaravelに転送することです。しかし、それが可能でないなら、それはまだ可能であるはずです。レディスでセッションを続けている場合は、両方のアプリケーションからアクセスできます。

  1. LaravelアプリケーションのUserオブジェクトを認証したいが、Cakeアプリケーションで認証が行われるようにする。したがって、Laravelアプリケーションで何とか再認証する必要があるかもしれません。ただし、セッションが有効で、ユーザーIDを持っていることがわかっている場合は、これを問題なく行うことができます。
  2. セッショントークンは異なる方法で生成されます。Laravelは、そのアプリケーションキーを使用して1つのアルゴリズムでトークンを生成します。 CakePHPについて知らなくても、私はセッションキーが異なって生成されると確信しています。一致させるためのキーの生成を変更することで、これを超えることができます。さもなければ、塩をハッシュする問題、CSRFの検証などがアプリケーション間を移動する場合には問題に終わります。
+0

私は同じデータベースを共有します。ユーザーがログインしているかどうかを確認する特性があります。ラベールに? URL全体を渡す? –

+0

これは私がやることだよ。 – Phroggyy

+0

ヘッダーは役に立たなかった。 ' <?php header( '場所:http:// localhost/mylaravelapp/public'); > ' –

関連する問題