PHP cURL, wie man den Wert des Benutzeragenten hinzufügt ODER die cURL-Anforderungen blockierenden Server überwindet?

9

Ich übertrage ein Objekt-Array. Ich habe einen cURL-Client (Übermittler) auf dem eigenen Server und Hör-Skript auf dem Server des anderen , den ich nicht unter meiner Kontrolle habe. Dann denke ich, sie blockieren die eingehenden cURL-Anfragen , denn wenn ich mit dem normalen HTML <form> teste, funktioniert es. Aber nicht über CURL sowieso.

Ich denke also, sie haben cURL etwas eingeschränkt.

Dann sind meine Fragen hier:

  1. Kann ein Server die eingehenden cURL-Anfragen einschränken / blockieren?
  2. Wenn ja, kann ich den HTTP-Header (User Agent) in meinem initiierenden cURL-Skript manipulieren / ändern?
  3. Oder gibt es noch andere mögliche Geschichten?

Danke!

    
夏期劇場 23.07.2013, 03:38
quelle

4 Antworten

4
___ qstntxt ___

Ich übertrage ein Objekt-Array. Ich habe einen cURL-Client (Übermittler) auf dem eigenen Server und Hör-Skript auf dem Server des anderen , den ich nicht unter meiner Kontrolle habe. Dann denke ich, sie blockieren die eingehenden cURL-Anfragen , denn wenn ich mit dem normalen HTML %code% teste, funktioniert es. Aber nicht über CURL sowieso.

Ich denke also, sie haben cURL etwas eingeschränkt.

Dann sind meine Fragen hier:

  1. Kann ein Server die eingehenden cURL-Anfragen einschränken / blockieren?
  2. Wenn ja, kann ich den HTTP-Header (User Agent) in meinem initiierenden cURL-Skript manipulieren / ändern?
  3. Oder gibt es noch andere mögliche Geschichten?

Danke!

    
___ qstnhdr ___ PHP cURL, wie man den Wert des Benutzeragenten hinzufügt ODER die cURL-Anforderungen blockierenden Server überwindet? ___ answer17801261 ​​___
  1. Auf der Serverseite können wir einige Anfragen blockieren, indem wir die Header-Felder (einschließlich refer, cookie, user-agent usw.) in der HTTP-Anfrage, der IP-Adresse, der Zugriffshäufigkeit erkennen. Und in den meisten Fällen haben Anfragen, die von einer Maschine erzeugt werden, normalerweise etwas anderes als menschliche Anforderungen, z. B. keine Bezugnahme & amp; Cookie, oder mit höherer Zugriffsfrequenz, können wir einige Regeln schreiben, um diese Anfragen zu verweigern.

  2. Gemäß 1 können Sie Ihr Bestes versuchen, um echte Anfragen zu simulieren, indem Sie die Header-Felder mit zufälligen und langsameren Frequenzen füllen und mehr IP-Adressen verwenden. (klingt wie Angriff)

  3. Wenn Sie niedrigere Frequenzen verwenden und die Server nicht zu stark belasten, befolgen Sie die Zugriffsregeln. Sie werden Ihre Anfragen selten blockieren.

___ tag123curl ___ cURL ist ein Bibliotheks- und Befehlszeilentool zum Übertragen von Daten mit verschiedenen Protokollen wie HTTP, FTP und SFTP. Das cURL-Projekt produziert zwei Produkte, libcurl und cURL. Dieses Tag deckt alle cURL-Verwendungen ab, unabhängig davon, welches cURL-Produkt verwendet wird ___ answer17801226 ___

Der Server kann nicht nur cURL-Anfragen blockieren, da es sich nur um HTTP-Anfragen handelt. Das Ändern des Benutzeragenten Ihrer cURL kann Ihr Problem also lösen, da der Server denkt, dass Sie eine Verbindung über einen Browser herstellen, der in UA dargestellt wird.

    
___ tag123httpheaders ___ Im Hypertext Transfer Protocol (HTTP) enthalten HTTP-Header-Felder die Betriebsparameter einer HTTP-Anfrage oder -Antwort. Mit der Anfrage- oder Antwortzeile (erste Zeile der Nachricht) bilden sie den Nachrichtenkopf. ___ answer17833693 ___

Wenn Sie immer noch mit dem Problem konfrontiert sind, dann tun Sie Folgendes.

1.

%Vor%

2.

%Vor%

HINWEIS: Sie benötigen einen COOKIES-Ordner im Verzeichnis.

3.

%Vor%

Wenn sie das Problem nicht lösen, geben Sie die Beispieleingabe / Ausgabe / Fehler / etc. So kann eine genauere Lösung bereitgestellt werden.

    
___ tag123php ___ PHP ist eine weit verbreitete, dynamische, objektorientierte und interpretierte Skriptsprache, die primär für die serverseitige Webentwicklung entwickelt wurde. ___ tag123useragent ___ Ein Benutzer-Agent ist eine Software (ein Software-Agent), die im Auftrag eines Benutzers handelt. Der Begriff wird häufig für Browser und andere Software verwendet, die Netzwerkanforderungen sendet. Im HTTP-Protokoll identifiziert sich ein Benutzeragent gegenüber dem Server mit einer User-Agent-Zeichenfolge. Die User-Agent-Zeichenfolge ist eine Zeichenfolge im Header einer HTTP-Anforderung, die den Browser, die Version, das Gerät, Betriebssystem und andere Informationen zu dem Gerät angibt, von dem die Anforderung stammt. ___ answer17801135 ___
%Vor%     
___
TroyCheng 23.07.2013, 03:57
quelle
17
%Vor%     
srain 23.07.2013 03:42
quelle
16

Wenn Sie immer noch mit dem Problem konfrontiert sind, dann tun Sie Folgendes.

1.

%Vor%

2.

%Vor%

HINWEIS: Sie benötigen einen COOKIES-Ordner im Verzeichnis.

3.

%Vor%

Wenn sie das Problem nicht lösen, geben Sie die Beispieleingabe / Ausgabe / Fehler / etc. So kann eine genauere Lösung bereitgestellt werden.

    
Black0CodeR 24.07.2013 12:11
quelle
0

Der Server kann nicht nur cURL-Anfragen blockieren, da es sich nur um HTTP-Anfragen handelt. Das Ändern des Benutzeragenten Ihrer cURL kann Ihr Problem also lösen, da der Server denkt, dass Sie eine Verbindung über einen Browser herstellen, der in UA dargestellt wird.

    
AxelPAL 23.07.2013 03:52
quelle

Tags und Links