Проблема идентификации посетителей
Предположим название сайта site.com . При переходах по ссылкам вида site.com/index.htm, site.com/dir/file.htm... все нормально работает - посетители учитываются и т.д., т.е. куки работают. Но если прийти на сайт со ссылки вида myhoster.com/~site/index.htm (страницы физически одни и те же) ничего не работает, т.е. работает, но неправильно. Кука заново ставится, посетитель учитывается как уникальный.. Как решить эту проблему, т.е. чтобы при посещении по обоим видам ссылок посетитель учитывался как один и тот же?
Пишу статистику для сайта (посещаемость, закачки,....). Каждому новому посетителю ставится кука, по ней определяю, был ли посетитель на сайте и сколько раз был.
Предположим название сайта site.com . При переходах по ссылкам вида site.com/index.htm, site.com/dir/file.htm... все нормально работает - посетители учитываются и т.д., т.е. куки работают. Но если прийти на сайт со ссылки вида myhoster.com/~site/index.htm (страницы физически одни и те же) ничего не работает, т.е. работает, но неправильно. Кука заново ставится, посетитель учитывается как уникальный.. Как решить эту проблему, т.е. чтобы при посещении по обоим видам ссылок посетитель учитывался как один и тот же?
Как вариант - вести GET-сессию, т.е. добавлять в конец строки URL что-то вроде "&sid=18a6ERW9vWUyRWRuRum18mIg253", ну и, естественно, синхронизировать информацию с базой данных. Второй вариант, это делать такую куку, которая не будет зависеть от сайта. Или же сделать одинаковые куки сразу для всех возможных вариантов. Третий вариант - идентифицировать пользователя по его IP адресу, который находится в переменной $_SERVER['REMOTE_ADDR']. Последний вариант даст наиболее грамотный результат. Золотая середина, так сказать.
Как вариант - вести GET-сессию, т.е. добавлять в конец строки URL что-то вроде "&sid=18a6ERW9vWUyRWRuRum18mIg253", ну и, естественно, синхронизировать информацию с базой данных. Второй вариант, это делать такую куку, которая не будет зависеть от сайта. Или же сделать одинаковые куки сразу для всех возможных вариантов. Третий вариант - идентифицировать пользователя по его IP адресу, который находится в переменной $_SERVER['REMOTE_ADDR']. Последний вариант даст наиболее грамотный результат. Золотая середина, так сказать.
Ссылки вида myhoster.com/~site/ лежат не у меня. И изменить их я не могу (добавлять параметры итд).
Вот про куки, не зависящие от сайта, можно поподробнее?
IP отпадают сразу - многие ходят через прокси, опять же динамические IP... У меня вся статистика на куках
Ссылки вида myhoster.com/~site/ лежат не у меня. И изменить их я не могу (добавлять параметры итд).
Вот про куки, не зависящие от сайта, можно поподробнее?
IP отпадают сразу - многие ходят через прокси, опять же динамические IP... У меня вся статистика на куках
Если счетчик в виде картинки, то можно добавить полиси в HTTP заголовок:
P3P: policyref="/w3c/p3p.xml", CP="NON DSP COR CUR ADM DEV PSA PSD OUR UNR BUS UNI COM NAV INT DEM STA"
Если счетчик встроен в движок сайта, то кука потеряется в любом случае.
Ссылки вида myhoster.com/~site/ лежат не у меня. И изменить их я не могу (добавлять параметры итд).
Вот про куки, не зависящие от сайта, можно поподробнее?
Все просто. Делаете небольшой плавающий фрейм и уже в него загружаете страницу с фиксированным доменным именем. Он-то и будет вести статистику.
Все просто. Делаете небольшой плавающий фрейм и уже в него загружаете страницу с фиксированным доменным именем. Он-то и будет вести статистику.
Скорее всего придется так и сделать. Но переделывать движок сайта очень не хочется. :(
Скорее всего придется так и сделать. Но переделывать движок сайта очень не хочется. :(
А зачем переделывать? Это, считайте, одна вставка в шаблон и один скрипт (который уже должен быть), который и работает с куками и ведет лог.
А зачем переделывать? Это, считайте, одна вставка в шаблон и один скрипт (который уже должен быть), который и работает с куками и ведет лог.
Ok. Спасибо за информацию.