Avertissement: exiger une fois(): http:// wrapper est désactivé dans la configuration du serveur de permettre url incluent=0
j'essaie d'inclure un fichier php dans une page via
require_once(http://localhost/web/a.php)
j'obtiens une erreur
Warning: require_once(): http:// wrapper is disabled in the server configuration by allow_url_include=0
j'ai changé allow_url_include=1
dans le php.ini et cela a fonctionné, mais je ne pense pas que tout le monde me laissera changer leur php.fichier ini.
alors, y a-t-il un moyen d'accomplir ceci?
7 réponses
l'avertissement est généré parce que vous utilisez une URL complète pour le fichier que vous incluez. Ce n'est pas la bonne façon parce que de cette façon vous allez obtenir du HTML du webserver. Use:
require_once('../web/a.php');
de sorte que le serveur web puisse exécuter le script et livrer sa sortie, au lieu de simplement servir le code source (votre cas actuel qui mène à l'avertissement).
j'ai eu cette même erreur en essayant d'inclure un fichier PHP dans mon thème Wordpress. J'ai pu le contourner en me référant au nom du fichier en utilisant dirname(__FILE__)
. Je ne pouvais pas utiliser de chemins relatifs puisque mon fichier allait être inclus dans différents endroits du thème, donc quelque chose comme require_once '../path-to/my-file'
ne fonctionnerait pas.
require_once get_template_directory_uri() . '/path-to/my-file'
par require_once dirname( __FILE__ ) . '/path-to/my-file'
a fait l'affaire.
Tu dois mettre le chemin vers le fichier. Par exemple:
require_once('../web/a.php');
vous ne pouvez pas obtenir le fichier pour l'exiger d'internet (avec protocole http) il est restreint. Les fichiers doivent être sur le même serveur. Avec possibilité de se voir (droits)
Dir-1 -
> Folder-1 -> a.php
Dir-2 -
> Folder-2 -> b.php
To include a.php inside b.php => require_once('../../Dir-1/Folder-1/a.php');
To include b.php inside a.php => require_once('../../Dir-2/Folder-2/b.php');
require_once('../web/a.php');
si cela ne fonctionne pour personne, voici la bonne idée d'inclure le fichier n'importe où dans le projet.
require_once dirname(__FILE__)."/../../includes/enter.php";
ce code obtiendra le fichier à partir de 2 répertoires en dehors du répertoire courant.
WORDPRESS a cette erreur principalement:
SOLUTION:
Localisez votre répertoire installé PHP Sur le serveur d'hébergement à distance ou "serveur Local "
Dans le cas de Windows os
par exemple, si vous utilisez xampp ou wamp serveur. il sera dans le répertoire xammp
'c:\xammp\php'
Remarque: Pour OS Unix / Linux, localisez votre répertoire PHP dans Webserver
trouver et éditer PHP.INI fichier
Find 'allow_url_include'
remplacer par la valeur 'sur'
allow_url_include=Sur
Enregistrez-vous de php.ini & redémarrage votre serveur web.