Ошибка встроенных Google Карт - заблокирован кадр с источником
Я пытаюсь внедрить карту Google на клиентский сайт.
Вот код встраивания, который я использую как скопированный из источника просмотра страницы, на которой он встроен. Я выполнил инструкции с этой страницы http://maps.google.ca/help/maps/getmaps/plot-one.html
<iframe width="180" height="250" frameborder="0" scrolling="no" marginheight="0"
marginwidth="0" src="http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=
&q=5590+Joliet+Street+Denver,+Colorado+88239&aq=&sll=34.168218,-111.930907
&sspn=15.047206,26.30127&ie=UTF8&hq=&hnear=5590+Joliet+St,+Denver,+Colorado
+80239&ll=39.797915,-104.860812&spn=0.013667,0.025685&t=m&z=14&output=embed">
</iframe>
Я получаю сообщение об ошибке (Chrome Developer Tools, Console) Заблокировал кадр с исходным кодом http://maps.google.com "от доступа к кадру с исходным кодом" http link here ". Протоколы, домены и порты должны совпадать." И не отображать карты.
Интересно, когда я вставляю это в текстовый документ и сохраняю его как HTML и открываю его в Chrome, карта будет отображаться, но я все равно получаю ту же ошибку в Dev Tools (за исключением того, что источник имеет значение null).
приложение php, и я попробовал remove_header(); и это ничего не изменило, и я убедился, что ссылка в iframe содержит output = embed.
Я пробовал FF, Chrome и IE 10, все с одинаковым результатом.
Вот ссылка на рассматриваемую страницу. (не удается отправить ссылку на IP-адрес)
198 точка 154 точка 220 точка 143/контакт/
Ответы
Ответ 1
Ваши протоколы несовместимы, https и http. Я просто видел все ошибки консоли, отображаемые на странице, которую вы опубликовали, и все они отображают ссылки на карты google как https, а ваш сайт - http.
Это появилось несколько раз на SO, и повторяющееся предложение - использовать API Карт Google.
Получение протоколов http/https для соответствия с <iframe> для maps.google.com
Ответ 2
Я думаю, вы должны установить правильный заголовок X-Frame-Options.
см. https://developer.mozilla.org/en-US/docs/HTTP/X-Frame-Options
Ответ 3
Отсутствие "s" в https, это правильный код для использования:
<iframe width="150" height="250" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?f=q&source=s_q&hl=it&geocode=&q=5590%2BJoliet%2BStreet%2BDenver,%2BColorado&sll=37.0625,-95.677068&sspn=55.718442,121.201172&ie=UTF8&hq=&hnear=5590+Joliet+St,+Denver,+Colorado+80239&t=m&ll=39.79792,-104.860811&spn=0.016486,0.012789&z=14&iwloc=A&output=embed"></iframe>
Ответ 4
В Chrome есть ошибка, которая остановит показ встроенных карт. Путь к нему - использовать API карт напрямую, а не встраивать. См. Этот вопрос для получения более подробной информации.
и решение
fooobar.com/info/236937/...