Задать вопрос
@bigrusssianshark

Почему не работает file_get_contents?

Использую
<?php
$String = file_get_contents('url сайта');
echo $String;
?>

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

Я так понимаю, что на сайте какая-то защита стоит?
Если да, то как ее возможно попробовать обойти
  • Вопрос задан
  • 3959 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Возможно сайт смотрит на наличие определённых HTTP-заголовков, например, чтобы был не пустой user-agent или какие-то другие заголовки.
Чтобы их задать не обязательно нужен curl (но рекомендую его), можно и для file_get_contents это сделать.
Пример ниже задаём Accept-language и User-Agent

$options = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-Language: en-US,en;q=0.9,ru;q=0.8\r\n".
"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.50 Safari/537.36 OPR/65.0.3467.16 (Edition beta)\r\n"
  )
);

$context = stream_context_create($options);
$String = file_get_contents($url, false, $context);
Ответ написан
Комментировать
@entermix
Включите вывод ошибок и посмотрите что там происходит.

error_reporting(E_ALL);
ini_set('display_startup_errors', 1);
ini_set('display_errors', '1');


https://www.php.net/manual/ru/function.error-repor...
Ответ написан
Комментировать
Exploding
@Exploding
wtf?
Потому что cUrl надо использовать.
Странно, что у вас
...с одним определенны сайтом такое не выкатывает...

Должно быть наоборот.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽