2017-02-16 1 views
-1

J'utilise file_get_contents pour récupérer des informations d'un second serveur Web. J'utilise le code suivant:Utiliser PHP file_get_contents pour l'adresse IP

$json_url ="http://example.com/thisworks.html"; 
$json = file_get_contents($json_url); 
$links = json_decode($json, TRUE); 

Mais pour se connecter à mon serveur web j'utilise une adresse IP avec un port, mais le code suivant (file_get_contents avec IPadress) ne fonctionne pas:

$json_url ="44.44.44:5000"; 
$json = file_get_contents($json_url); 
$links = json_decode($json, TRUE); 

(44.44.44 est bien sûr un exemple)

MISE À JOUR 1:

Je suis en train de l'erreur:

[function.file-get-contents]: failed to open stream 

MISE À JOUR 2:

Tout simplement ajouter http: // ne fonctionne pas

MISE À JOUR 3:

http://44.44.44 œuvres, mais http://44.44.44:5000 n'a pas (et je besoin d'utiliser le port: 5000 dans l'url en raison du programme que j'utilise)

Y at-il un moyen d'utiliser file_get_contents de cette façon? Ou est-il seulement possible de l'utiliser avec http: // ou https: //?

+2

Essayez d'ajouter 'http: //' devant l'adresse IP – Jerodev

+0

Est-ce que ne fonctionne pas, il se bloque sur: 5000 ajouter – user2519424

+1

utiliser curl au lieu de file_get_contents <= utiliser le port 80 – Fky

Répondre

0

Un protocole est requis.

De la documentation PHP sur les emballages de protocole http://php.net/manual/en/wrappers.php:

Note: The URL syntax used to describe a wrapper only supports the scheme://... syntax. The scheme:/ and scheme: syntaxes are not supported.

UPD. Aussi, vous pouvez vous inscrire propre protocole http://php.net/manual/ru/function.stream-wrapper-register.php

UPD 2 Si l'hôte ne fonctionne après avoir ajouté le protocole, regardez accessability d'adresse IP via le réseau