Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: COOKIE и эксплорер
 
 автор: Владимир55   (21.07.2009 в 12:51)   письмо автору
 
 

Я устанавливаю посетителю COOKIE и при его переходе на другую страницу проверяю наличие COOKIE, ибо иначе я не смогу отличить данного посетителя от другого. И если в броузере посетителя отключены COOKIE, то я буду вынужден отказать ему в предоставлении услуг.

Установку COOKIE я делаю так:

<?php

      
// Устанавливаем метку
    
setcookie("metka"time (), time () + 2500000);


А проверку делаю так:

<?php

    
// Проверка включения кукисов
    
if(!isset($_COOKIE['metka']))  // Кукисы выключены
    
{
        echo 
'В вашем браузере запрещены COOKIE. ' ;
        exit () ;
    }


У меня используется ИЕ8, в настройках которого стоит "принимать все COOKIE".

Работает нормально. Вроде бы.

На компьютере у супруги тоже установлен ИЕ8 и с теми же настройками. И он постоянно выводит сообщение о запрещенных COOKIE! Чего я только ни делал - и полностью очищал COOKIE, и понижал безопасность до нижнего предела, и перезагружал компьютер - диагностика та же!

Посмотрел на её компьютере через ФФ - работает нормально. Через ИЕ - не работает.

И это меня весьма беспокоит: ведь если на ее компьютере скрипт не работает, то не исключена ситуация, что он не работает и у других посетителей, использующих ИЕ.

Как разобраться в этой проблеме?

  Ответить  
 
 автор: юпи   (21.07.2009 в 13:14)
 
   для: Владимир55   (21.07.2009 в 12:51)
 

Может на проблемном компе системное время сбито (будущая дата)?

  Ответить  
 
 автор: Владимир55   (21.07.2009 в 14:38)   письмо автору
 
   для: юпи   (21.07.2009 в 13:14)
 

Так оно и оказалось - время слегка убежало вперед (на 20 лет секунда в секунду).

Спасибо!

  Ответить  
 
 автор: Loki   (21.07.2009 в 15:43)   письмо автору
 
   для: Владимир55   (21.07.2009 в 14:38)
 

Любопытно, откуда же в этом случае берет время ФФ?

  Ответить  
 
 автор: sim5   (21.07.2009 в 15:46)   письмо автору
 
   для: Loki   (21.07.2009 в 15:43)
 

Его любезно предоставляет support.mozilla.com :)

  Ответить  
 
 автор: АААААААААА да да да   (21.07.2009 в 20:34)
 
   для: Владимир55   (21.07.2009 в 14:38)
 

Кстати, а ведь поисковиковые роботы вроде бы cookies не передают - индексировать ваш сайт не будут, разве не так?

  Ответить  
 
 автор: Владимир55   (22.07.2009 в 00:01)   письмо автору
 
   для: АААААААААА да да да   (21.07.2009 в 20:34)
 

Есть мнение, что некоторые поисковики являются сессионными. Точно я этого не знаю, но, на всякий случай, механизм идентификации включил там, где индексация мне не нужна.

  Ответить  
 
 автор: $   (22.07.2009 в 00:21)
 
   для: Владимир55   (22.07.2009 в 00:01)
 

"Некоторые", возможно. Но Google, как показывает мой опыт, -- нет. Вас может быть это не коснулось, но у меня на сайте SID передаётся в URL, если пользователь не поддерживает cookies. Поисковый бот от Google мне генерировал сотни сессий. Естественно, и эффективность от такой индексации была низкая, так как формально две страницы с разными query_string (разными SID) считаются разными.

  Ответить  
 
 автор: $   (22.07.2009 в 00:22)
 
   для: $   (22.07.2009 в 00:21)
 

Проблему, кстати, я решил через привязку бота (опередялю по User-Agent) к одному SID (все SID храню в таблице базы данных).

  Ответить  
 
 автор: Владимир55   (22.07.2009 в 11:06)   письмо автору
 
   для: $   (22.07.2009 в 00:22)
 

Эта проблема меня тоже коснулась, но на другом сайте.

Идея привязки бота, определенного по User-Agent, к одному SID, мне не кажется удачной. По той причине, что поисковики время от времени посылают "контролеров", маскирующихся под обычных пользователей. И если контролеры обнаруживают расхождения, то могут быть неприятные последствия.

Корректно проблема решается через мета тег rel="canonical" для Google, Yahoo и Microsoft.
Яндекс для этой цели предусмотрел директиву Clean-param http://help.yandex.ru/webmaster/?id=996567#1041216

  Ответить  
 
 автор: $   (22.07.2009 в 16:48)
 
   для: Владимир55   (22.07.2009 в 11:06)
 

От разных сессий для анонимных пользователей расхождений нет.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования