Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 12.04.2017 21:58:27

301 Moved Permanently появился неизвестно откуда

Всем привет. нужна помощь. сделал небольшой проект для личного пользования (на сервере laravel 5.3, на клиента Angular), при разработке постоянно использовал php artisan serve и все работало, но как выгрузил на сервер то на первый же запрос для авторизации (post) получаю ответ 301 и перенаправление на тот же адрес, притом что через тот же postman никакого 301 и перенаправления нет, все идет как надо

Не в сети

#2 13.04.2017 11:35:22

Re: 301 Moved Permanently появился неизвестно откуда

/ в конце url случайно нет?

Не в сети

#3 13.04.2017 11:39:23

Re: 301 Moved Permanently появился неизвестно откуда

нет. странно то что если тот же запрос отправляется через postman то он обрабатывается правильно. Но если отправляется из браузера (из ангулара непосредственно), то приходит 301 и следом идет запрос на тот же url но методом get  вместо post

Не в сети

#4 13.04.2017 11:44:46

Re: 301 Moved Permanently появился неизвестно откуда

то что после 301 и 302, запрос только GET – это требования стандарта. редирект с сохранением метода – это 307 и 308. другой вопрос откуда он берётся – может в коде он формируется по каким-то условиям? или миддлварь какая-то их генерит?

Не в сети

#5 14.04.2017 17:00:43

Re: 301 Moved Permanently появился неизвестно откуда

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

Не в сети

#6 16.04.2017 20:10:19

Re: 301 Moved Permanently появился неизвестно откуда

пытался сегодня дебажить и получил неожиданный результат.
перед тем как отправить запрос post отправляется запрос Options (это ожидаемое поведение), но на запрос options по нужному урлу приходит 301 в итоге собственно сам post даже и не отправляется (а отправляется get как по протоколу и в ответ получает 404 что вполне логично).
По этой причине в постмане все нормально работает (просто потому что он не отправляет options а сразу отправляет post)
А неожиданностью стало то что продебажить options запрос я не могу никак. ставлю брэйкпоинт на первой же строке в индексе а в результате ловится только запрос get (который идет после получения от options ответа 301).
и чет теперь я не вкурю что делать то. подскажите плиз

Не в сети

#7 17.04.2017 13:35:13

Re: 301 Moved Permanently появился неизвестно откуда

запрос отправляется кроссдоменно? если да, нужна миддлварь, которая будет отвечать на options что запрос разрешено отправлять – например пакет laravel-cors

Не в сети

#8 12.09.2017 13:29:00

Re: 301 Moved Permanently появился неизвестно откуда

/ в конце url случайно нет?

У меня проблема со слешем на конце. Если переходить по ссылке site/test, то отобразится все нормально. Если перейти по site/test/, то вызывается ошибка 301 и url становится site/public/test. Вы знаете как это исправить? Заранее спасибо.

Не в сети

#9 12.09.2017 13:52:58

Re: 301 Moved Permanently появился неизвестно откуда

У меня проблема со слешем на конце. Если переходить по ссылке site/test, то отобразится все нормально. Если перейти по site/test/, то вызывается ошибка 301 и url становится site/public/test. Вы знаете как это исправить? Заранее спасибо.

наличие или отсутствие / в конце url определяется соглашениями той или иной cms или фреймворка. в ларавеле решено что / в конце url быть не должно, это даже не захардкожено, а просто изначально заложено в логику работы маршрутизатора и это нельзя «исправить», потому что это не ошибка. просто прими это как данное и не борись…

Не в сети

Подвал раздела