Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/07047.jsonl.gz/753

PHP 3, PHP 4, PHP 5. https:// depuis PHP 4.3.0
http://example.com
http://example.com/file.php?var1=val1&var2=val2
http://user:<email-pii>
https://example.com
https://example.com/file.php?var1=val1&var2=val2
https://user:<email-pii>
Permet des accès en lecture uniquement, pour des fichiers accessibles sur le réseau avec la méthode GET de HTTP 1.0. Un en-tête Host: est envoyé avec la requête, pour gérer les hôtes virtuels, basés sur des noms. Si vous avez configuré une version de navigateur avec l'option user_agent dans votre fichier php.ini, ou via le contexte de flux, il sera aussi utilisé dans votre requête.
|Avertissement|
Lorsque vous utilisez SSL, le serveur IIS de Microsoft violera le protocole en fermant la connexion sans envoyer l'indicateur close_notify. PHP le reportera en tant que "SSL: Fatal Protocol Error" quand vous arrivez à la fin des données. L'astuce est de baisser le niveau de la directive error_reporting pour ne pas inclure les warnings. A partir de PHP 4.3.7, le bogue est détecté automatiquement lors de l'ouverture du flux en utilisant https:// et supprimera cet avertissement pour vous. Si vous utilisez fsockopen() pour créer une socket ssl://, vous devez vous occuper vous même de supprimer l'erreur.
Les redirections sont supportées depuis PHP 4.0.5; si vous utilisez une version plus ancienne, vous devrez ajouter vous-même les slash finaux dans vos URL. S'il est important de connaître l'URL de la ressource qui vous a fourni le document, une fois que toutes les redirections ont été suivies, vous devez analyser les en-têtes de réponses retournés par le flux.
Exemple L-1. http:// et redirections
Le flux donne l'accès au corps (body) de la ressource. Les en-têtes sont stockés dans la variable $http_response_header. Depuis PHP 4.3.0, les en-têtes sont aussi accessibles avec la fonction stream_get_meta_data().
Les connexions HTTP sont en lecture seule. Vous ne pouvez pas écrire dans des fichiers ouverts via le protocole HTTP.
Note : HTTPS est supporté depuis PHP 4.3, si vous avez compilé le support d'OpenSSL.
Tableau L-2. Résumé des gestionnaires
|Attribut||Supporté|
|Limité par allow_url_fopen.||Oui|
|Autorisé en lecture||Oui|
|Autorisé en écriture||Non|
|Autorisé en ajout||Non|
|Autorise les lectures / écritures simultanées||Non applicable|
|Supporte stat()||Non|
|Supporte unlink()||Non|
|Supporte rename()||Non|
|Supporte mkdir()||Non|
|Supporte rmdir()||Non|
Tableau L-3. Options de contextes (depuis PHP 5.0.0)
|Nom||Utilisation||Par défaut|
|method||GET, POST, ou une autre méthode HTTP acceptée apr le serveur distant.||GET|
|header||Les autres en-têtes envoyés durant la requête. Les valeurs de cette option remplaceront les valeurs déjà configurées ( comme User-agent:, Host:, et Authentication:.|
|user_agent||Valeur à envoyer pour l'en-tête User-Agent:. Cette valeur sera utilisée si un type de navigateur n'est pas specifié dans l'option de contexte header ci-dessus.||Directive dans le php.ini : user_agent.|
|content||D'autres données envoyées après les en-têtes. Typiquement, utilisé pour placer les requêtes POST ou PUT.|
|proxy||URI du serveur de proxy. (i.e. tcp://proxy.example.com:5100 ).|
|request_fulluri||Lorsque cette option vaut TRUE, l'URI entière sera utilisée lors de la construction de la rquête. (i.e. GET http://www.example.com/path/to/file.html HTTP/1.0). Même si ce n'est pas la méthode standard, certains proxies le requiert.||FALSE|
Options de contexte pour les sockets : Plusieurs options de contexte supplémentaires sont supportées par le gestionnaire de transport Pour les flux http://, voyez les options de contexte du transport tcp://. Pour les flux https://, voyez les options de contexte du transport ssl://.