Реклама на сайте Advertise with us

Спецы mod_rewrite, подскажите

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 12.04.03
Сообщения: 93
Рейтинг: 85

Ссылка на сообщениеДобавлено: 02/04/09 в 10:02       Ответить с цитатойцитата 

Хочется средствами mod_rewrite отслеживать людей кто откуда первый раз пришел на сайт. В куки писать HTTP_REFERER если еще нет такой куки.
Что то типа
Код:
RewriteEngine On
RewriteCond %{HTTP_COOKIE}!^.*first_referer.*$ [AND]
RewriteCond %{HTTP_REFERER} ^.*://([^:]+)$
RewriteRule ^([^:]+)$ - [CO=first_referer:%1:.домен.com:600000000:/]

Но это у меня не пытается даже работать, т.к.
Apache старый-1.3.33 и параметр СО не знает, да в самой конструкции я не уверен.
Может есть еще какой вариант повесить куку?
Вариант с JavaScript не подойдет, т.к. в первый раз могут не только страницу, но и другие типы файлов дергать(exe,zip).

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 02/04/09 в 10:41       Ответить с цитатойцитата 

Последнюю строку заменить на редирект на URL, в котором будет CGI или PHP, все, что он делает - это подсовывает куку и редиректит затем на оригинальый URL, на который человек пришел.

0
 



С нами с 12.04.03
Сообщения: 93
Рейтинг: 85

Ссылка на сообщениеДобавлено: 02/04/09 в 10:48       Ответить с цитатойцитата 

Дык хочется без редиректа, что бы со стороны ничего не было видно

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 02/04/09 в 10:57       Ответить с цитатойцитата 

Тогда только искать на modules.apache.org модуль, который умеет куки подсовывать - для старой версии. Или самому написать. Или кому-то заплатить, чтобы написали. Или проапгрейдить апач до 2.2, наконец.
Больше - никак.

3
 



С нами с 13.11.06
Сообщения: 777
Рейтинг: 418

Ссылка на сообщениеДобавлено: 03/04/09 в 00:58       Ответить с цитатойцитата 

А зачем это ваще делать через мод рерайт а не средствами пхп ?

0
 



С нами с 12.04.03
Сообщения: 93
Рейтинг: 85

Ссылка на сообщениеДобавлено: 03/04/09 в 06:53       Ответить с цитатойцитата 

А как можно средствами пхп подсадить куку при запросе zip или exe файла?

0
 



С нами с 23.03.09
Сообщения: 9
Рейтинг: 1

Ссылка на сообщениеДобавлено: 03/04/09 в 07:31       Ответить с цитатойцитата 

Отдавать файл через php, что не есть гут.
Либо если куки нет редиректить на php, ставить куку и редиректить обратно на файл, что тоже через жопу icon_smile.gif

0
 



С нами с 12.04.03
Сообщения: 93
Рейтинг: 85

Ссылка на сообщениеДобавлено: 03/04/09 в 10:11       Ответить с цитатойцитата 

Пока предварительный вариант такой
.htaccess
Код:

RewriteEngine On
RewriteCond %{ENV:REDIRECT_STATUS} 200                   # Что бы не зациклилось
RewriteRule .* - [L]

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !\.(pl|cgi|png|js|css|ico)$ [NC] #Исключения
RewriteCond %{HTTP_COOKIE} !^.*first_referer.*$
RewriteCond %{HTTP_REFERER} ^.*://([^:]+)$
RewriteRule ^.*$ /cgi-bin/redir.pl [L]


redir.pl
Код:
..
print "Set-Cookie: first_referer=$ref; paht=/; expires=$cooktime\n";
print "Location: $ENV{'REQUEST_URI'}\n\n";
..

Тоже конечно через жопу icon_sad.gif

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 03/04/09 в 14:41       Ответить с цитатойцитата 

Поставь mod_perl на апач и напиши все, что нужно, на нем, там не надо быть виртуозом-программистом, чтобы такое написать. Пишешь модуль, в fixup-фазе проверяешь, что куки нету, если нет - берешь реферер и суешь его в куку.

Еще вариант - можешь писать access лог формата "unique ID (см. mod_unique_id) + referer" в трубу stdin какого-нибудь скрипта. Который работает так: "такого нет в базе - запоминаем реферер, такой есть - ничего не делаем". Потом, когда тебе нужен реферер в другом месте, просто берешь из базы. Периодически записи чистятся по их timestamp'у. В этом случае тебе даже куки не понадобится.

P.S. Вот тебе еще вариация на тему 2.
http://httpd.apache.org/docs/1.3/mod/mod_usertrack.html

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »