Делаем скрипт для А/Б тестирования на php

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

Подчеркиваю: страниц для тестирования — 3. Почему я это подчеркнул? Потому что большинство сервисов и скриптов позволяют перенаправлять посетителей только на две разные страницы.

Решить задачу по А/Б тестированию помог простой php скрипт. Этот скрипт располагается на отдельной странице, которая загружается в корень сайта, на котором производится тестирование.

Итак схема работы скрипта для тестирования трех страниц такова:

1. Создаются три тестовые страницы, которым можно присвоить любые произвольные имена. Например, test1.html, test2.html и так далее. Хочу заметить, что данный скрипт не ограничивает количество тестируемых страниц.

2. Создается страница с произвольным именем с расширением .php — это важно, так как в этом файле и будет находиться скрипт. Чтобы не делать лишних телодвижений в настройках конфигурации сайта, этот файл целесообразно назвать index.php, если тестируемые странцы должны быть доступны по адресу основного домена.

3. Если по какой-то причине этому файлу присваивается имя, отличное от index.php, например, test.php, то придется внести некоторые коррективы в файл .htaccess, если нужно, чтобы тестируемые страницы были доступны по адресу домена типа http://mysite.ru.

А теперь обо всем сказанном выше конкретно.

С первым пунктом все понятно. Даже если уже шел трафик на ваш лендинг и его главная страница была index.html, вы можете смело переименовать ее, как было сказано в первом пункте, так как ее имя отныне не имеет особого значения. Так как главной на время тестирования будет страница, на которой будет установлен только скрипт, код которого привожу ниже.

А вот сам скрипт, который нужно разместить на странице, описанной в пункте 2:

<?php
$Pages = array(
'http://mysite.ru/test1.html' ,
'http://mysite.ru/test2.html' ,
'http://mysite.ru/test3.html'
);
$MaxRandom = getrandmax();
$RandomValue = intval( rand( 0 , count( $Pages ) - 1 ) );
header( 'Location: '.$Pages[ $RandomValue ] );
?>

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

Как назначить главную страницу с помощью .htaccess

А теперь пару слов о конфигурации индексной страницы для вашего сайта, если ее имя отлично от index.php или index.html.

Допустим, по какой-то причине вам нужно, чтобы ваш домен указывал на страницу test.php. То есть при переходе по ссылке на ваш сайт по адресу http://mysite.ru открывалась не страница с именем index.php или index.html, страница test.php.

Для этого в файле .htaccess, который наверняка присутствует в главной директории вашего сайта (если такового нет, значит, придется создать), прописываем всего лишь одну строчку

DirectoryIndex test.php

Все. Ничего лишнего. Только имя страницы, которая будет выполнять роль индексной. Таким образом вы можете на своем сайте назначить главной (индексной) любую страницу, какую пожелаете.

Загружаете файл .htaccess с внесенными мзменениями обратно на хостинг и теперь страница test.php — главная страница вашего сайта.

Оцените статью
Добавить комментарий