X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Вопрос по php
zakaznik
zakaznik
Topic Starter сообщение 18.1.2011, 15:41; Ответить: zakaznik
Сообщение #1


↑↑↑ Цель ↑↑↑
******

Группа: Active User
Сообщений: 1842
Регистрация: 17.3.2010
Поблагодарили: 394 раза
Репутация:   51  


Здравствуйте, вот столкнулся с проблемкой:

необходимо записывать в лог обращения к файлу, в логе должен указываться реферер сайта, который запросил обращение к определенному php, например, snif.php...

ну дак вот, скрипт записи лога есть, но при таком обращении: file_get_contents к файлу snif.php скрипт не может получить http реферер(((

P.S. если переходим в браузере по обычной ссылке на страничку snif.php, все нормально получается...

как быть? есть ли выход?

Сообщение отредактировал zakaznik - 18.1.2011, 15:44


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
On1x
On1x
сообщение 18.1.2011, 15:44; Ответить: On1x
Сообщение #2


Бывалый
****

Группа: User
Сообщений: 262
Регистрация: 24.1.2010
Из: Димитровград
Поблагодарили: 61 раз
Репутация:   20  


Реферрер передает только браузер. Это не обязательный параметр при серфинге. Проблема не в скрипте, просто file_get_contents не сообщает в заголовке реферрер.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 18.1.2011, 15:45; Ответить: zakaznik
Сообщение #3


↑↑↑ Цель ↑↑↑
******

Группа: Active User
Сообщений: 1842
Регистрация: 17.3.2010
Поблагодарили: 394 раза
Репутация:   51  


(On1x @ 18.1.2011, 14:44) *
Проблема не в скрипте, просто file_get_contents не сообщает в заголовке реферрер.

теоретически, можно ли это както поправить в скрипте, чтобы передавал?

Сообщение отредактировал zakaznik - 18.1.2011, 15:46


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
On1x
On1x
сообщение 18.1.2011, 16:04; Ответить: On1x
Сообщение #4


Бывалый
****

Группа: User
Сообщений: 262
Регистрация: 24.1.2010
Из: Димитровград
Поблагодарили: 61 раз
Репутация:   20  


В каком? Который snif.php, или который запрашивает через file_get_contents?

Если первый вариант - то никак.
Если второй - то смотрите в сторону CURL(параметр CURLOPT_REFERER), или голый fsockopen.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 18.1.2011, 16:07; Ответить: zakaznik
Сообщение #5


↑↑↑ Цель ↑↑↑
******

Группа: Active User
Сообщений: 1842
Регистрация: 17.3.2010
Поблагодарили: 394 раза
Репутация:   51  


(On1x @ 18.1.2011, 15:04) *
Если второй - то смотрите в сторону CURL(параметр CURLOPT_REFERER), или голый fsockopen.

да второй smile.gif

$opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-language: en\r\n" .
              "Cookie: foo=bar\r\n" .
             "Referer: http://www.example.com\r\n"
  )
);

$context = stream_context_create($opts);

$file = file_get_contents('http://www.example.com/', false, $context);


вот это нашел было))) сидел разбирался.... не смог настроить чтобы САМ РЕФЕРЕР забирал....((( example.com передает, а вот как вытаскивать рефереры ? какую регулярку писать? smile.gif

Сообщение отредактировал zakaznik - 18.1.2011, 16:08


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
On1x
On1x
сообщение 18.1.2011, 16:11; Ответить: On1x
Сообщение #6


Бывалый
****

Группа: User
Сообщений: 262
Регистрация: 24.1.2010
Из: Димитровград
Поблагодарили: 61 раз
Репутация:   20  


вы немного не понимаете.

snif.php - получает при загрузке все данные из заголовка. Без разницы - кто их передает.

Вторым скриптом - вы можете отбратится к определенному сайту поставив реферер. В данном случае вы обращаетесь к странице
$file = file_get_contents('http://www.example.com/', false, $context);
и передаете реферер в заголовке "Referer: http://www.example.com\r\n".

Можно теперь вторым - обращаться к первому скрипту, чтобы тот получал реферер.
Вы что хотите сделать?


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 18.1.2011, 16:19; Ответить: zakaznik
Сообщение #7


↑↑↑ Цель ↑↑↑
******

Группа: Active User
Сообщений: 1842
Регистрация: 17.3.2010
Поблагодарили: 394 раза
Репутация:   51  


(On1x @ 18.1.2011, 15:11) *
Вы что хотите сделать?

да, все так как вы написали:

это только пример, который нашел в инете: $file = file_get_contents('http://www.example.com/', false, $context);

так то у меня: $file = file_get_contents('http://mysite/snif.php', false, $context);

и передает реферер в заголовке "Referer: http://www.example.com\r\n". - да, по этому примеру именно так...

НО:

мне необходимо, чтобы реферер брался автоматически... т.е. скрипт будет использоваться на сайтах: mysite1.ru, mysite2.ru и т.д....

а сейчас выше приведенный скрипт передает принудительно один реферер, который указан: "Referer: http://www.example.com\r\n"

Сообщение отредактировал zakaznik - 18.1.2011, 16:20


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
On1x
On1x
сообщение 18.1.2011, 16:23; Ответить: On1x
Сообщение #8


Бывалый
****

Группа: User
Сообщений: 262
Регистрация: 24.1.2010
Из: Димитровград
Поблагодарили: 61 раз
Репутация:   20  


Что значит реферер будет браться автоматически? Не совсем понимаю.
Туда можно любой сайт писать. Можно хост доставать из одной переменной, вот так:

"Referer: http://".$_SERVER["HTTP_HOST"]."\r\n"


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zakaznik
zakaznik
Topic Starter сообщение 18.1.2011, 16:28; Ответить: zakaznik
Сообщение #9


↑↑↑ Цель ↑↑↑
******

Группа: Active User
Сообщений: 1842
Регистрация: 17.3.2010
Поблагодарили: 394 раза
Репутация:   51  


(On1x @ 18.1.2011, 15:23) *
"Referer: http://".$_SERVER["HTTP_HOST"]."\r\n"

ВООООО!!! то, что мне было нужно....

я тоже так подставлял: "Referer: http://".$_SERVER["HTTP_HOST"]."\r\n"

только HOST"]. -точку тут не ставил и ничего не выдавалосЬ! СПАСИБО ! biggrin.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) php скрипты любой сложности / диз+верстка (адаптивно)
любые задачи на php - автоматизация, парсинг, работа с БД
1 affrodita 465 8.12.2017, 17:40
автор: affrodita
Открытая тема (нет новых ответов) Вопрос к знатокам Instagram
20 SEOMR 4121 30.11.2017, 14:25
автор: DiscordPro
Открытая тема (нет новых ответов) Вопрос про Телеграмм
18 syd2010 1093 28.11.2017, 14:25
автор: PostBrigada
Открытая тема (нет новых ответов) Вопрос по seo для интернет магазина
куда девать продвинутые товары, которые уже не выпускают
13 viktormerke 2327 25.11.2017, 20:06
автор: Mikki
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыАrticle manager вопрос
0 Smile3D 428 24.11.2017, 18:27
автор: Smile3D


 



RSS Текстовая версия Сейчас: 11.12.2017, 7:47
Дизайн