Le serveur reçoit-il réellement les requêtes et gérez-vous correctement le nom d'hôte (alias)?
après avoir ajouté à mon fichier .hosts
Vérifiez le journal de votre serveur Web pour voir comment la demande est arrivée ...
curl a des options pour vider la demande envoyée et la réponse reçue, elle s'appelle trace, qui sera enregistrée dans un fichier.
--trace
S'il vous manque des informations d'hôte ou d'en-tête, vous pouvez forcer ces en-têtes avec l'option config.
Je ferais fonctionner la requête curl sur la ligne de commande, puis j'essayerais de l'implémenter en PHP.
l'option de configuration est
-K / - config
les options pertinentes pour curl sont ici
--trace Active un vidage de trace complet de toutes les données entrantes et sortantes, y compris les informations descriptives, dans le fichier de sortie donné. Utilisez "-" comme nom de fichier pour envoyer la sortie à stdout.
This option overrides previous uses of -v/--verbose or --trace-ascii.
If this option is used several times, the last one will be used.
-K / - config Spécifie le fichier de configuration à partir duquel lire les arguments curl. Le fichier de configuration est un fichier texte dans lequel des arguments de ligne de commande peuvent être écrits qui seront ensuite utilisés comme s'ils étaient écrits sur la ligne de commande réelle. Les options et leurs paramètres doivent être spécifiés sur la même ligne de fichier de configuration, séparés par des espaces, deux-points, le signe égal ou toute combinaison de ceux-ci (cependant, le séparateur préféré est le signe égal). Si le paramètre doit contenir des espaces, le paramètre doit être placé entre guillemets. Entre guillemets doubles, les séquences d'échappement suivantes sont disponibles: \, \ ", \ t, \ n, \ r et \ v. Une barre oblique inverse précédant toute autre lettre est ignorée. Si la première colonne d'une ligne de configuration est un '#' caractère, le reste de la ligne sera traité comme un commentaire.
Specify the filename to -K/--config as '-' to make curl read the file from stdin.
Note that to be able to specify a URL in the config file, you need to specify it using the --url option, and not by simply writing the URL on its own line. So, it could look similar to this:
url = "http://curl.haxx.se/docs/"
Long option names can optionally be given in the config file without the initial double dashes.
When curl is invoked, it always (unless -q is used) checks for a default config file and uses it if found. The default config file is checked for in the following places in this order:
1) curl tries to find the "home dir": It first checks for the CURL_HOME and then the HOME environment variables. Failing that, it uses getpwuid() on UNIX-like systems (which returns the home dir
given the current user in your system). On Windows, it then checks for the APPDATA variable, or as a last resort the '%USERPROFILE%\Application Data'.
2) On windows, if there is no _curlrc file in the home dir, it checks for one in the same dir the curl executable is placed. On UNIX-like systems, it will simply try to load .curlrc from the deter-
mined home dir.
# --- Example file ---
# this is a comment
url = "curl.haxx.se"
output = "curlhere.html"
user-agent = "superagent/1.0"
# and fetch another URL too
url = "curl.haxx.se/docs/manpage.html"
-O
referer = "http://nowhereatall.com/"
# --- End of example file ---
This option can be used multiple times to load multiple config files.