我在Codeigniter中有一个旧的客户项目,该项目相当庞大,我需要将其迁移到Laravel,而无需全部编写。
由于事实很大并且仍在使用中,所以我不能从头开始编写所有内容(即使我真的很喜欢),所以我的解决方案是创建一个从Codeigniter到Laravel的Auth“桥”。
>基本上,我需要保持Codeigniter应用程序运行,并从那里读取所有旧内容,而所有新逻辑将在Laravel内部实现。
我的想法是在我的根文件夹项目的ci
文件夹中安装Codeigniter应用程序:
laravelnewsite/ci
我唯一想做的就是仅跳过ci
文件夹中的Laravel路由。
当前,即使我只是导航到laravelnewsite.test/ci
也不起作用并返回Laravel-404错误,即使我将其移至public/
或storage/app/public/ci
(带有符号链接),我仍然无法阅读。
我认为要为ci
文件夹设置一个例外,但是我不知道该怎么做。
答案 0 :(得分:0)
首先,您应该仅使用其中一个。
即使您设法将请求发送到code igniter
,也必须在“验证桥”之后将其发送回laravel
吗? laravel如何识别身份验证?
无论如何,回到您的问题。一种PHP
解决方案是将代码点火器的index.php
文件包含在laravel的index.php
文件中,然后退出。 (请求的结构可能不适用于CI,请检查.htaccess)
public/index.php
<?php
if ({condition}) {
require_once({{codeigniter.index.php}});
die();
}
/**
* Laravel - A PHP Framework For Web Artisans
*
* @package Laravel
* @author Taylor Otwell <taylor@laravel.com>
*/
define('LARAVEL_START', microtime(true));
其他解决方案将需要精心设计的.htaccess
或nginx/apache config file
才能将请求重定向到正确的php文件。