Maison > Article > développement back-end > Pourquoi `file_get_contents()` échoue-t-il avec une erreur 500 alors que le site Web se charge normalement ?
Échec de la requête HTTP lors de l'utilisation de file_get_contents()
Lorsque vous rencontrez une erreur 500 lors de l'utilisation de file_get_contents() malgré le chargement normal du site Web dans un navigateur , considérez ce qui suit :
Dans ce cas spécifique, une erreur s'est produite lors de la tentative de récupération du contenu d'un site Web à l'aide de file_get_contents() en PHP. Les journaux d'erreurs indiquaient un message « 500 Internal Server Error », tandis que le site Web fonctionnait sans problème lors de l'accès via un navigateur.
Une solution possible pour résoudre ce problème consiste à modifier le code pour inclure des en-têtes de requête supplémentaires. En définissant un en-tête « User-Agent » personnalisé, vous pouvez déguiser votre demande en navigateur typique. Cela peut aider à résoudre les erreurs HTTP rencontrées lors de l'utilisation de file_get_contents() :
<code class="php">$opts = array('http'=>array('header' => "User-Agent:MyAgent/1.0\r\n")); $context = stream_context_create($opts); $header = file_get_contents('https://www.example.com',false,$context);</code>
Si cette modification ne résout pas le problème, il peut être intéressant d'envisager la possibilité de rencontrer des limitations dans l'accès au contenu à partir de sites Web sécurisés (HTTPS ) en utilisant file_get_contents().
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!