2015-07-03 3 views
0

У меня вопрос простой. Я использую CURL для отправки данных с помощью полей post на мой целевой сервер. Я использую следующий код,Получение url от источника curl

$ch = curl_init(); 
curl_setopt($ch,CURLOPT_URL, $url); 
curl_setopt($ch,CURLOPT_POST, count($_POST)); 
curl_setopt($ch,CURLOPT_POSTFIELDS, $postStr); 
$result = curl_exec($ch); 
curl_close($ch); 

И тогда я захватывая данные, используя

$post = $_POST; 

Так есть в любом случае я могу определить, с какого сервера локон данные поступают из? Начиная с 5 разных серверов. Я хочу захватить URL-адрес источника, из которого отправляются почтовые поля. Спасибо

+0

Ну, вы могли бы добавить идентификатор к сообщению данных, что является типичным решением. Некоторые могут также сказать, что вы можете оценить IP-адрес отправителей, но это часто не работает, например, когда прокси и NAT входят в игру. – arkascha

+0

Не уверен, что вы подразумеваете, захватив URL. Это отличается от *** $ url ***? –

+0

Не каждый скрипт PHP обязательно имеет URL-адрес. И скручивание не косвенно не посылало его. Вы можете вручную добавить поле POST, которое идентифицирует исходный сервер, ввести «ключ API» или использовать «REMOTE_ADDR». Зависит ли это, если это предназначено только для статистики, как украшения или для целей, подобных авторизации? – mario

ответ

0

Используйте подробный режим (-v) в программе cURL.

Пример:

C:\curl www.google.com 

<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> 
<TITLE>302 Moved</TITLE></HEAD><BODY> 
<H1>302 Moved</H1> 
The document has moved 
<A HREF="http://www.google.com.br/?gfe_rd=cr&amp;ei=Y76WVbuaAvGp8wf42oGADw">here</A>. 
</BODY></HTML> 

Или:

C:\curl -v www.google.com 

* Rebuilt URL to: www.google.com/ 
* Trying 216.58.222.4... <<< ---  <<< --- YOUR SERVER IS THIS ONE 
* Connected to www.google.com (216.58.222.4) port 80 (#0) 
> GET/HTTP/1.1 
> Host: www.google.com 
> User-Agent: curl/7.42.0 
> Accept: */* < 
< HTTP/1.1 302 Found 
< Cache-Control: private 
< Content-Type: text/html; charset=UTF-8 
< Location: http://www.google.com.br/?gfe_rd=cr&ei=A76WVZvWCO-p8wf334HIDg 
< Content-Length: 262 
< Date: Fri, 03 Jul 2015 16:53:23 GMT 
< Server: GFE/2.0 
< Alternate-Protocol: 80:quic,p=0 
< 
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> 
<TITLE>302 Moved</TITLE></HEAD><BODY> 
<H1>302 Moved</H1> 
The document has moved 
<A HREF="http://www.google.com.br/?gfe_rd=cr&amp;ei=A76WVZvWCO-p8wf334HIDg">here</A>. 
</BODY></HTML> 
* Connection #0 to host www.google.com left intact 
Смежные вопросы