Я думаю, что этот вопрос будет легким для кого-то, и для меня это будет проблемой для лица.Смешанный контент jQuery ajax Запрос HTTPS был заблокирован на Laravel
У меня есть сайт Laravel 5.3, и на разных страницах есть запросы ajax. Поскольку я использую функцию csrf_field()
, они работают нормально.
Но есть одна страница, где Аякса производит эту ошибку:
Mixed Content: The page at 'https://example.com/fb/reports' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://example.com/fb/json?levelType=&id=&aggLevel=ad&start=&end='. This request has been blocked; the content must be served over HTTPS.
Мой Javascript выглядит следующим образом:
var relUrl = '/fb/json/';
var payload = {
levelType: levelType,
id: id,
aggLevel: aggLevel,
start: start,
end: end
};
console.log(relUrl);
return $.ajax({
type: 'GET',
dataType: 'json',
data: payload,
url: relUrl,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
Я прочитал тонн статей об этой ошибке. Я пробовал множество предлагаемых решений, включая изменение относительного URL-адреса на полный URL-адрес https или запуск его с помощью двух косой черты.
Я даже пытался изменить способ работы с маршрутами Laravel, и теперь я использую только параметры querystring.
Я изучил все приведенные ниже статьи (и многое другое).
Кроме того, так как это один Аякса запрос в защиту паролем части сайта (и Аякса запросы, работы находятся в общественном/открытой части сайта), я подумал, может быть, что было связано с проблема. Но затем я использовал SSH
для входа на производственный сервер и vim
, чтобы временно удалить строку, требующую какой-либо проверки подлинности, и произойдет ошибка https , а также.
Какие шаги я могу предпринять для дальнейшего отладки? Какие журналы можно «хвост» на моем сервере Cloudways?
Есть ли что-нибудь, что Cloudflare может мешать (что я сомневаюсь, поскольку другие запросы ajax работают, все на https)?
Спасибо!
- jQuery AJAX Request to HTTPS getting served to HTTP with Laravel and Select2
- This request has been blocked; the content must be served over HTTPS
- Mixed content issue - insecure XMLHttpRequest endpoint
- XHR response blocked by Chrome, because of mixed content issue (http/https)
- Forcing AJAX call to be HTTPS from HTTPS Page
- MixedContent when I'm loading https page through ajax, but browser still thinks it's http
- jQuery ajax won't make HTTPS requests
- Laravel 5.1 ajax url parameter is url
Вы когда-нибудь решали это? Я имею дело с этим прямо сейчас. – user1167442
Да. См. Мою первую строку. Убрав конечную косую черту, зафиксируйте ее. Вот почему это принятый ответ. Удачи. – Ryan
Спасибо. Мы решили это решить. Он удалял трейлинг-косую черту, но Apache также делал что-то, чтобы добавить косую черту, поэтому в нашем случае это было немного сумасшедшим. – user1167442