我确实收到了一项具有挑战性的任务,即将旧的遗留 cakephp 2 应用程序迁移到 laravel 5.2。
两者必须共存并协同工作,同时所有模块都迁移到 laravel,因为它是一个大型应用程序。
这可能/可行吗?身份验证 session 凭据可以轻松传输到 laravel 身份验证 session 吗?
在这个过程中你能发现什么样的陷阱?我怎样才能避免它们?
以前有人做过吗?
最佳答案
到目前为止,最合乎逻辑的解决方案是立即将整个应用程序转移到 Laravel。但是,如果那不可能,它仍然应该是可能的。如果您在 Redis 中保留 session ,那么这两个应用程序当然都可以访问它们。主要问题可能是:
- 您希望 Laravel 应用程序上的用户对象进行身份验证,但身份验证发生在 Cake 应用程序中。因此,您可能需要在 Laravel 应用程序中以某种方式重新授权。但是,如果您知道 session 有效并且您有用户 ID,则可以毫无问题地执行此操作。
- session token 的生成方式不同:Laravel 将使用其应用程序 key 通过一种算法生成其 token 。在不了解 CakePHP 的情况下,我相信 session key 的生成方式不同。您也许可以通过修改 key 的生成以使其匹配来超越这一点。否则,如果这些事情在应用程序之间进行,您最终会遇到散列盐、CSRF 验证等问题。
关于php - Cakephp 和 Laravel 共存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33690369/