2015-12-01 3 views
3

Я маршрута, определенные в моем файле route.php, как показано ниже:Laravel маршрутизации и маршрутизации параметры

Route::get('{test1}/{test2}/{test3}', function($test1, $test2, $test3) { 
    $result = [$test1, $test2, $test3]; 
    return view('view', compact('result')); 
}); 

он прекрасно работает в мой контроллер, но на вид части, когда я вижу его в браузере, когда я просто пишу что-то вроде этого в браузере:

http://localhost/mysitefolder/public/test1/test2/test3 

он загружает вид и передать все данные, но он получает все свои активы, как мои таблиц стилей, изображения и скрипты из URL, как показано ниже:

http://localhost/mysitefolder/public/test1/test2/js/jquery.js

Почему это так?
заранее!

+1

Могу ли я увидеть, как вы создаете ссылки в файле клика вашего вида, используете ли вы 'url()' ваш веб-сервер? apache или nginx – Digitlimit

+0

мой веб-сервер - apache, а шокирующая часть - это просто жестко закодированные их, я не использовал никакой вспомогательной функции laravel для этого :) – Sina

ответ

1

Два решения либо используют / в начале ваших URL-адресов, чтобы относительная адресация не использовалась или не использовала вспомогательные функции laravel {{ asset('/js/script.js') }}.

Если вы не используете '/' в начале своего URL-адреса, его обрабатывают так, как если бы он был относительным адресом, а текущее местоположение добавлено в его начале.

Иногда даже «/» не будет работать, если ваше приложение не будет подано на уровне Root. Например, у вас есть приложение на http://localhost/yourapplication, тогда / будет ссылаться на ваш localhost вместо приложения, поэтому лучший способ - использовать вспомогательную функцию laravel.

+0

Спасибо большое! так что не могли бы вы рассказать мне, почему он опускает последнюю часть URL-адреса, которую я имею в виду/test3, и загружает активы из http: //localhost/mysitefolder/public/test1/test2/js/jquery.js вместо http: // localhost /mysitefolder/public/test1/test2/test3/js/jquery.js – Sina

+0

, потому что у вас нет какой-либо '/' в последней части, если у вас есть URL-адрес примерно как http: // localhost/mysitefolder/public/test1/test2/test3/', то его последняя часть была бы включена для создания относительного пути. –

Смежные вопросы