2016-04-10 2 views
0

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

Теперь я думаю о внедрении какого-то кеширования на стороне сервера, так что первый запрос для предварительного просмотра выводит информацию и изображение с целевой страницы, но каждый последующий запрос (до определенного возраста) подается с кэш на моем хосте. Я относительно уверен, что могу реализовать что-то свое, но есть ли готовое решение для чего-то подобного? Я самоучка, поэтому я предполагаю, что мое решение DIY будет менее оптимальным. Благодарю.

Редактировать Я реализовал решение DIY (см. Ниже), но я по-прежнему открыт для предложений относительно того, как это можно было бы эффективно выполнить.

ответ

0

Я не мог найти никаких готовых решений, поэтому я написал один в PHP.

Он принимает URL-адрес в качестве параметра HTTP GET и выполняет некоторую проверку ошибок. Если проверка ошибок проходит, она открывает JSON-кодированную базу данных с диска и анализирует данные в массив объектов Record, которые содержат нужную мне информацию. Приведенный URL-адрес используется как ключ массива. Если ключ существует в массиве, возвращается кэшированная информация. В противном случае веб-страница извлекается, анализируются метатеги, изображение сохраняется локально и возвращаются кэшированные данные. Затем кэшированная информация вставляется в базу данных. После того, как кэшированная информация будет возвращена на запрашивающую страницу, каждая запись проверяется на ее истечение, а устаревшие записи удаляются. Каждый запрос для кэшированной записи продлевает срок ее действия. Наконец, база данных JSON-кодируется и записывается обратно на диск.

Смежные вопросы