2012-04-24 2 views
0

Например, у меня очень простой сайт, только HTML/CSS/Javascript на основе php, .net, ruby ​​используется. Некоторые посетители моего сайта должны увидеть версию «A», а другие - версию «B.Как запустить две версии статического веб-сайта одновременно для тестирования A/B?

Сайт размещен на сервере Apache

+1

Вы готовы заплатить за это? – user123444555621

+0

Хотелось бы, если есть бесплатный инструмент, который может выполнять эту работу –

ответ

0

Одним из способов является путем анализа IP Адрес или диапазон.

Создать список IP Address/Range

$ips = array(
    "a" => array('xxx.xxx.xxx.xxx', ....), 
    "b" => array('xxx.xxx.xxx.xxx', ....), 
); 

Теперь использовать $_SERVER['REMOTE_ADDR'] и переключить домен

if(in_array($ips['a'], $_SERVER['REMOTE_ADDR'])) { 
    header("location: website.com/a"); 
} else { 
    header("location: website.com/b"); 
} 
exit; 
1

Один из способов сделать это является запуск Apache в качестве балансировки нагрузки, "балансирование" между двумя разными версиями сайта (которые являются собственными vhosts, запущенными на других портах). Когда кто-то подключается, apache случайно направит их на версию A или версию B сайта. Вы можете использовать mod_proxy_balancer. Он также поддерживает «липкую» балансировку: то есть вы можете установить cookie так, чтобы как только клиент попал в версию A, они всегда были направлены на версию A (а также на версию B).