2013-04-05 3 views
9

In Laravel, ist es möglich umleiten zu einem public/testFile.php, durch Routing?Laravel: Wie an die öffentliche Datei Datei

Im application/routes.php,

Route::get('/', function() 
{ 
    //'How to point to public/testFile.php' 

}); 

Haben Sie bereits ein Projekt, wollen aber nur die neuen Module in Laravel zu tun. So kopiert das vorhandene Projekt unter Public/

+0

Stellen Sie sicher, Ihre negativen Abstimmung zu definieren. –

+2

Ich habe Sie nicht abgelehnt, aber es gibt keine Regel, nach der ein Benutzer definieren muss, warum er abgelehnt hat. Allerdings ist dies eine sehr grundlegende Frage, die auch die Verwendung eines MVC-Frameworks zunichte macht. –

+0

Ich habe Sie nicht persönlich gewählt. Lediglich Missbilligung in meiner Antwort, obwohl am Ende, was auch immer Ihr Boot schwimmt. Ich habe 100x schlimmer als deine Frage im Produktionscode gesehen, persönlich ;-) –

Antwort

8

Sie besiegen völlig den Zweck des Rahmens durch das zu tun, aber wenn Sie wirklich wollen ...

Route::get("/", function() { 
    ob_start(); 
    require(path("public")."testFile.php"); 
    return ob_get_clean(); 
}); 

Dies wird die stdout Ausgabe der Datei zurück. Wenn Sie stattdessen bereits einen Rückgabewert im Skript haben, knacken Sie ob_start und den return Aufruf. wie folgt

Umleitungen sind getan:

Route::get("/", function() { return Redirect::to("testFile.php"); }); 
+0

Und 'require (Pfad (" public ")." TestFile.php ");' kann aktualisiert werden zu "require (public_path()." /testFile.php ");' – Ryan

+0

Ich habe ein SPA erstellt woanders und ich gebaut die 'SPAindex.html' über eine CLI in den öffentlichen Ordner von Laravel. Ich versuche das einzurichten, aber es funktioniert nicht. Wie soll ich den Controller der Route genau schreiben, wenn ich "public/SPAindex.html" verlinken möchte? – mesqueeb

5
Route::get('/', function() 
{ 
    include public_path().'testFile.php'; 
}); 

Wenn Sie Redirect wollen dann verwenden return Redirect::to('testFile.php')

Aber ich nicht, warum Sie diese seltsam tun wollen.

Ich glaube, Sie verwenden Laravel 3 (wie Sie erwähnten application/...), da public_path() ist path('public').