我已经从github克隆了一个项目,现在我需要整合该项目,那么如何处理laravel框架,我是否需要创建一个新项目然后需要替换文件夹?或任何其他替代方案?因为我是这个框架的新手......帮助我。
答案 0 :(得分:4)
这是一个广泛的问题,因为它取决于您的项目,我们在这里不知道。
Laravel不关心项目文件的位置,它允许您自由地为所有文件执行任何操作;人们对非Laravel项目与Laravel应用程序共享文件夹的大多数问题都与虚拟主机,.htaccess配置和/或他们尝试集成的应用程序有关。您必须非常了解这些Web服务器的工作原理如何使您的项目与Laravel应用程序很好地协同工作。
我的建议是:在项目中创建一个子文件夹,并在其上构建Laravel应用程序。配置一个虚拟主机别名,将Laravel应用程序的基本URL指向该文件夹,您应该很好。例如:
这将是myapp的子应用程序(Laravel)的别名:
Alias /subapp "/var/www/myapp/subapp/public"
<Directory /var/www/myapp/subapp>
Options Indexes Includes FollowSymLinks MultiViews
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>
.htaccess:
<IfModule mod_rewrite.c>
#Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subapp/index.php?/$1 [L]
</IfModule>
然后您可以拥有自己的网址:
http://myapp
和
http://myapp/subapp
您甚至可以直接在Laravel代码中要求Laravel导入一些类:
require "../../../classes/Class.php";
如果您的应用程序基于像Laravel这样的Composer,您可以通过以下方式自动加载您的课程:
require "../../../vendor/autoload.php";
但是如果你需要Laravel和你的应用程序之间的真正集成,你有两个(或更多)选项:
1)在API(或在其中创建API)中转换其中一个,并在客户端中将另一个转换为此API。
2)创建一个全新的Laravel项目,并将您的遗留代码带入Laravel应用程序,这应该是从头开始创建应用程序。