Как насчет этого:
1) Кодируйте все ссылки на статические ресурсы, например, [HOSTNAME] /Images/myimage.jpg
2) Создайте либо модуль HTTP, либо базовый классдля ваших страниц, в которых реализован фильтр ответов.
3) Этот фильтр должен использовать регулярное выражение, чтобы найти все экземпляры [HOSTNAME] и заменить его на альтернативный.
Фильтр может включать логику, чтобы проверить, является ли текущее имя хоста localhost, а затем просто вставить localhost в качестве имени хоста.Чтобы рандомизировать распределение других имен хостов, сохраняя кешируемость, вы можете сделать следующее:
1) Иметь список альтернативных имен хостов
2) Вам понадобится более сложное регулярное выражение / синтаксис для поиска [HOSTNAME], а также найдите имя файла
3) Создайте хэш полного пути к файлу.Это может быть очень просто, например, подсчет кодов ascii каждого символа в пути и поиск модуля # имен хостов
4) Используйте значение хеша, чтобы выбрать имя хоста из списка.
При этом вы должны получать разброс запросов по каждому имени хоста + один и тот же ресурс всегда будет обслуживаться с одного хоста, чтобы его можно было кэшировать.