Мне интересно, как отключить маршрутизацию на laravel для определенного каталога?
Я надеюсь запустить свой основной сайт с laravel (я переписываю его в рамки), но я хотел бы сохранить свое текущее программное обеспечение форума! Проблема в том, что когда laravel видит «localhost / forums», он ищет контроллер или маршрут форумов. Я бы хотел, чтобы он просто перешел в каталог literal / forums ..?
Мне пришлось публиковать эту строку публично / .htaccess
RewriteCond %{REQUEST_URI} !^/foldername
перед этой строкой (которая перенаправляет конечные косые черты)
RewriteRule ^(.*)/$ /$1 [L,R=301]
С Laravel 4 ни одно из этих решений не работало для меня. В конце концов я решил это, поставив
RewriteRule ^(directory-name) - [L]
до
RewriteRule ^(.*)/$ /$1 [L,R=301]
публично / .htaccess
Вам нужно сделать исключение в вашем файле .htaccess
. Чуть выше правила, которое отправляет все в index.php
, добавьте следующее:
RewriteCond %{REQUEST_URI} !^/forums
Все, что начинается с /forums
, не будет отправлено в Laravel.
(Конечно, предполагается, что вы используете Apache.)
Согласно вашему файлу routes.php
он должен работать.
forum
index.php
Laravel routes.php
(я использовал это в тестовом примере)
Route::get('{slug}', function($slug){ return $slug; });
Файловая структура
|- app |- public |--- index.php // Laravel's one |--- forum // directory for forum files |------ index.php // Forum's one ....
Используя эту структуру, URL-адрес не переписывается в файл index.php маршрутизации Laravel. Если я переименую / удалю URL-адрес forum
будет переписан URL-адрес.
Работает ли это для вас?