La fonction fopen() ne fonctionne pas en PHP (Apache, Linux Mint)
P粉722409996
P粉722409996 2023-08-13 14:14:43
0
1
434

fopen() ne fonctionne pas sur mon serveur local apache2 sous Linux Mint

 Le fichier 

test.txt est créé et je peux l'ouvrir avec Sublime et y écrire. Le répertoire de ce projet particulier est /var/www/site02. Lors de la configuration d'Apache2 après l'installation, j'ai spécifiquement modifié la propriété de ce répertoire spécifique (site02) pour pouvoir lire et écrire des fichiers (sudo chown $USER:$USER -R... vous voyez l'idée). En fait, je peux effectivement lire et écrire avec mon compte utilisateur dans ce répertoire (je peux utiliser librement les commandes cli git dans ce répertoire sans "sudo").

Si j'accède à index.php en utilisant le code mentionné ci-dessus, j'obtiens l'erreur suivante :

"Avertissement : fopen(test.txt) : Impossible d'ouvrir le flux : autorisation refusée dans /var/www/site02/index.php, ligne 6"

Que s’est-il passé ? J'ai essayé de rechercher le problème sur Google, mais j'ai trouvé des milliers de raisons différentes, ce qui m'a encore plus dérouté. Le problème vient-il du serveur Apache ? Ou dois-je apporter des modifications à la configuration de PHP ?

P粉722409996
P粉722409996

répondre à tous (1)
P粉107772015

Donc, après avoir posté cette question, j'ai décidé d'ouvrir /var/www/site02 avec un gestionnaire de fichiers (Thunar) pour vérifier les autorisations sous l'interface graphique. Oui, le propriétaire de ce répertoire est moi et je sais lire et écrire. Le groupe estmyusernameet les autorisations sont en lecture et en écriture. Mais pour les « autres », il n’y a qu’une seule permission : lire. Je l'ai changé pour lire et écrire. Et testez-le avec du code :

$fh = fopen("test.txt", 'w') or die("error writing the file"); $text = <<<_END line 1 line 2 line 3 _END; fwrite($fh, $text) or die("error writing the file"); fclose($fh); echo "成功!";

Et ça a marché !

    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!