2014-04-25 7 views
5

Ich habe ein Projekt von Github geklont und jetzt muss ich dieses Projekt integrieren, also wie mit Laravel Framework zu tun, sollte ich ein neues Projekt erstellen müssen dann Ordner ersetzen? Oder andere Alternativen? Weil ich neu in diesem Rahmen bin ... hilf mir.Bestehendes Projekt durch Laravel-Framework integrieren?

+0

http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist http://laravel.com/docs/installation <- Sobald Sie eine Neuinstallation durchgeführt haben, sollten Sie in der Lage sein zu integrieren jedes Projekt. –

Antwort

4

Dies ist eine weit gefasste Frage, denn es hängt von Ihrem Projekt ab, das wir hier nicht kennen.

Laravel kümmert sich nicht darum, wo Ihre Projektdateien sind, es erlaubt Ihnen, frei zu tun, was Sie mit allen benötigen; Die meisten Probleme mit Nicht-Laravel-Projekten, die einen Ordner mit einer Laravel-Anwendung teilen, beziehen sich auf den virtuellen Host, die .htaccess-Konfiguration und/oder die Anwendung, die sie zu integrieren versuchen. Sie müssen sehr gut verstehen, wie diese Webserver-Dinge funktionieren, damit Ihr Projekt mit einer Laravel-Anwendung gut spielt.

Mein Rat ist: Erstellen Sie einen Unterordner in Ihrem Projekt und bauen Sie Ihre Laravel-Anwendung darauf. Konfigurieren Sie einen Virtual Host-Alias, der die Basis-URL Ihrer Laravel-Anwendung auf diesen Ordner verweist, und Sie sollten gut sein. Zum Beispiel:

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> 

Und die .htaccess:

Dies ist ein Alias ​​für eine SubApp (Laravel) von myapp wäre

<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> 

Dann können Sie Ihre URLs haben:

http://myapp 

und

http://myapp/subapp 

können Sie sogar Laravel einige Ihrer Klassen machen importieren, indem Sie sie direkt in Ihrem Laravel Code erforderlich:

require "../../../classes/Class.php"; 

Wenn Ihre Anwendung auf Composer wie Laravel basiert, können Sie automatisch geladen Ihre Klassen, indem Sie:

require "../../../vendor/autoload.php"; 

Aber wenn Sie echte Integration zwischen Laravel und Ihre Anwendung benötigen, haben Sie zwei (oder mehr) Optionen:

1) Transformation einer von ihnen in einer API (oder cre eine API in sich aufgenommen) und die andere in einem Client zu dieser API.

2) Erstellen Sie ein ganz neues Laravel-Projekt und bringen Sie Ihren Legacy-Code in Ihre Laravel-Anwendung ein, die eine Anwendung von Grund auf neu erstellt.

1

Gehen Sie zu Ihrem Ordner www

cd /var/www 

Git Ihre Anwendung klonen (beachten Sie, dass hier das Verzeichnis darf nicht vorhanden sein):

git clone https://github.com/antonioribeiro/application 

Ändern Sie das Verzeichnis in den Ordner

cd application 

Führen Sie das Composer-Update aus (wenn Sie sich in einer Entwicklungsumgebung befinden)

composer update 

Oder ausführen Komponist installieren

composer install 

Hinweis (wenn Sie in einer Produktionsumgebung sind), dass für composer install oder composer update, der Ordner tatsächlich Dateien erstellt und sogar einen Anbieter Ordner haben kann, ist es nicht so Hindernis.

Verwandte Themen