За последние 24 часа нас посетили 19626 программистов и 1658 роботов. Сейчас ищут 1520 программистов ...

перелинковка в относительные ссылки при ssl сертификате

Тема в разделе "PHP для новичков", создана пользователем Feorayler, 2 мар 2017.

  1. Feorayler

    Feorayler Новичок

    С нами с:
    1 июн 2016
    Сообщения:
    17
    Симпатии:
    0
    Вообщем проблема такая. Поставил сертификат ssl. Но у меня данные парсируются и я теперь не знаю как сделать правильно перелинковку.
    1.
    Код (Text):
    1.     return '<img class="small" src="http://images.gnomograd.com/res/'.$name.'_'.$size.'.png" alt=" '.$name.'"/>';
    как здесь убрать http - если оставить //images.gnomograd.com/res/ - то данные не считывает вообще
    2.
    Код (Text):
    1. <?
    2. $json = file_get_contents('https://mastertigra-mc.appspot.com/api/buildings');
    3. $array = json_decode($json,true);
    тоже самое убрав http и оставив // считывать не хочет вообще тоже данные - все пусто сразу становится...
    Может есть еще методы какие нить? Просто хочется видеть зеленый значок соединения а не серый, что типа не шифрует(
    Всем спасибо!
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  3. Feorayler

    Feorayler Новичок

    С нами с:
    1 июн 2016
    Сообщения:
    17
    Симпатии:
    0
    1 На данный момент https горит не зеленым светом, как к примеру у вк или у других сайтов ввиду того, что не все ссылки относительные. Мне нужно чтобы горело зеленым. Но если я делаю относительными ссылки, то есть убирая http или https и оставляя только // перед ссылкой, то получается зеленое.
    [​IMG]
    Но при этом данные перестают считываться при относительных ссылках. Поэтому интересует есть или еще варианты обхода?
    [​IMG]
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Может там где file_get_contents оставить http, он же на сервере выполняется, значит //example.com не будет работать, так как не указан протокол
     
    acho нравится это.
  5. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    @Feorayler, в file_get_contents нет разницы, по какому протоколу берутся данные. SSL-сертификат проверяется только браузером. А вот
    у тебя подгрузить не получится.
    //images.gnomograd.com - это ссылка, относительно протокола. Загружаться будет контент по тому протоколу, по которому в данный момент работает твой сайт. Т.к. он работает по https, подгружаться будет картинка тоже по https. о в этом случае надо, чтобы сайт, где находится эта картинка, тоже мог работать по https. А конкретно на этом сайте сертификат не установлен
     
  6. Feorayler

    Feorayler Новичок

    С нами с:
    1 июн 2016
    Сообщения:
    17
    Симпатии:
    0
    вот вот... и не знаю че делать чтобы сделать зелененьким вверху https (((
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @Feorayler вот прочитай http://phpfaq.ru/newbie/na_tanke
    У тебя есть браузер, в нём свои законы и код на сервере там другие.
    Тебе нужно чтобы загрузка всего на страницу шла через https, так вот file_get_contens выполняется на сервере и браузер этого не видит и значит это не влияет.
    Теперь смотрим дальше, ты на сервере подгружаешь с https://mastertigra-mc.appspot.com/api/buildings всё нормально, но ты там получаешь список изображений,
    например http://images.gnomograd.com/houses/1.png тут уже http и изображения будут грузится на стороне браузера и тебе важно, чтобы они грузились по https,
    проверяем https://images.gnomograd.com/houses/1.png получаем облом, не работает загрузка изображений с того сервера по HTTPS потому что они его не настроили.

    Выход:
    1. Оставить как есть
    2. Загружать изображения на сервере по http и отдавать своими силами по https
    3. Что-то ещё придумать
     
  8. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
    @Feorayler, сохраняй изображения сначала к себе, и отдавай со своего сервера
    --- Добавлено ---
    а, пункт 2 у Дениса, да