проблема с base64_encode, который замедляет мой сайт php - PullRequest
0 голосов
/ 08 июня 2019

Я использовал src-шифрование изображения с base64_encode, но этот код замедляет мой сайт, но когда я добавляю этот код, он замедляет мой сайт.так что у кого-нибудь есть решение сделать мой сайт быстрее с этим типом шифрования.Я поставил свой код ниже.

<?php
   while ($user = mysqli_fetch_array($queryResult, MYSQLI_ASSOC)){
      if ($user["main_picture"]){
       $imageData = base64_encode(file_get_contents($user["main_picture"]));
       $result .= '<td><div class="user_image_container"><img src="data:image/jpeg;base64,'.$imageData.'"></img></div></td>';
      }
      else{
          $result .= '<td></td>';
      }
?>

Может кто-нибудь помочь мне в этом.

1 Ответ

0 голосов
/ 08 июня 2019

Когда вы загружаете страницу с этим кодом, интерпретатор PHP должен завершить выборку изображения по сети, прежде чем сможет интерпретировать остальную часть страницы, что добавляет время.

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

Потенциальный обходной путь: используйте базу данных для хранения одного-Используйте токены, которые отображаются на изображения.Когда пользователь загружает страницу, сгенерируйте токен (который будет быстрее, чем вытащить изображение), и пусть src изображения указывает на конечную точку обслуживания изображений, которую вы настроили, которая проверяет токен, помечает ее как использованную, выбирает файл изатем отправляет изображение.Вы можете столкнуться с проблемами с кэшированием, если хотите, чтобы оно было действительно одноразовым, но оно по крайней мере скрывает источник изображения.

...