Я объясню, что я имел в виду.
Прежде всего, мне нужна была эта система, потому что в Google Chart API есть несколько запросов в день, поэтому мне нужно было что-то обойти.
Двигатель был довольно прост.
Рассмотрим ванильное решение: в вашем HTML-коде ваш img 'src напрямую указывает на Google.
<img src="//google.chart.api?params123">
При использовании кэшира вы будете указывать не на Google, а на свой движок кэширования:
<img src="//yourwebsite/googleImageCacher.php?id=123">
Теперь ваш googleImageCacher.php
очень прост:
Он проверяет, найдено ли запрошенное изображение в кеше (это может быть файл или что-то еще), если его нет, тогда он запросит его, чтобы Google сохранил его и повторил.
Что-то вроде: (псевдокод)
$imageAssociation = array( '123' => '//google.chart.api?params123'
'image2' => '//google.chart.api?otherparma' );
if ( file_exists( 'imageCacheDir/' . $_GET['id'] ) ) {
echo file_get_contents('imageCacheDir/' . $_GET['id']);
} else {
//> Request the image to google
//> Save it in the imageCacheDir
//> Print it.
}
Конечно, вы можете просто набрать expiration time
в вашем googleImageCacher.php