#1 Le 15/05/2024, à 19:42
- jefnew
Erreur PHP sur un fichier Grav (résolu)
Bonsoir, la doc Grav m’a permis il y a trois ans environ de franchir le pas et m’initier lentement à ce cms, j'en remercie au passage l'auteur.
Grav me sert à mettre en forme un projet, mais en prenant mon temps, donc j’en fais de temps à autre quand ça me prends, (voilà pourquoi 3 ans) et donc qu’en localhost.(rien n'est en ligne!)
Tout récemment j’ai installé une nouvelle version d’ubuntu (Mate), vu que j’étais sur la 18.04 jusqu’à lors, et l’autre soir je me suis lancé dans la réinstallation des « outils » pour travailler sur Grav.
-j’ai donc remis libapache2mod-php
-rajouté les modules manquants que Grav affectionne
-créé le fichier de conf avec nano
-glissé un site dans /www (pris dans ceux que j’avais en sauvegarde sur un dd externe)
-attribué les droits
-enfin tout ce qu’il faut (et je l’ai fait tant de fois par le passé, vu que j’ai expérimenté plusieurs type de site Grav, que je ne pense pas avoir oublié un truc)
Je précise que je fais une utilisation particulière de Grav, par exemple je ne passe plus et depuis longtemps par la console d’administration, je ne mets donc pas à jour, et j’utilise Grav avec l’aide d’Atom à côté, et l’inspecteur de firefox.
mon problème :
Le premier test (après installation des "outils") m’a donné un écran problème grav, que je ne sais interpréter, un « empty »,qui aurait une valeur qui ne va pas, si je comprends un peu.
je n'ai jamais eu ce type d'alerte, qui plus est d'une partie du site où je n'ai jamais mis les pieds du tout, voici une capture:
https://zupimages.net/up/24/20/uebr.png
Merci par avance. jef
Modération : merci d'utiliser des images de petite taille (300x300) ou des miniatures pointant sur ces images.
Dernière modification par jefnew (Le 16/05/2024, à 19:11)
Hors ligne
#2 Le 15/05/2024, à 19:58
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
Bonjour , l' alerte que tu as eu , il faudrait nous la donner en entier .
Si j' ai bien compris , ca se situe en fait dans le code PHP que tu montres ?
les versions de PHP ont certainement evolué depuis 3 / 4 ans , il se peut qu ' un code qui passe en version 7 , déclenche une alerte sur une version 8 .
je trouve le
$key[strlen($key) - 1]
, plutot bizzare comme instruction , je ne vois pas trop ce que ca pourrait donner , mais sans avoir la totalité du code , si c' est bien dans le code qu ' il faut trouver la reponse , difficile de dire .
PS : il vaut mieux mettre le code , entre balise code , plutot que de mettre une image , surtout pour un soucis de code .
EDIT , vu ce qui est indiqué tout en bas de ton image , c' est bien dans la partie que j ' ai indiqué que ca se passe ( enfin je pense ) .
Dernière modification par iznobe (Le 15/05/2024, à 20:01)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#3 Le 15/05/2024, à 20:17
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Bonsoir Iznobe, c'est délicat de te répondre, en fait avec grav, lorsqu'il y a un truc qui cloche, et bien c'est l'écran que tu as en capture qui s'affiche, avec en coloré ce qui pose le problème.
Par exemple tu bidouilles ton site, modifie ou ajoute un truc, tu vas le visionner en localhost et là apparaît cet écran, donc tu comprends qu'il y a un truc qui va pas, et tu ne peux plus accéder à ton site tant que c'est pas réglé. J'espère t'avoir répondu.
Dernière modification par jefnew (Le 15/05/2024, à 20:18)
Hors ligne
#4 Le 15/05/2024, à 23:28
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
ce qui ne lui plait pas , c' est que la valeur entre crochet de cette partie de code :
$key[strlen($key) - 1] est un chiffre ( type int ) . ce qu ' il veut , c' est un index de tableau , comme dans la partie precedente : $key[0] .
la fonction strlen renvoie un int , il faut donc convertir cette valeur avant dans le code , mais c ' est loin tout ca pour moi ... ca doit faire au moins 10 ans que j' ai pas mis le nez dans le php .
en gros , il faudrait faire ( conversion est une fonction fictive dont je ne connais pas le nom qui va transformer le type ( int ) de valeur de la variable "strlen($key) - 1" en un type de valeur qui lui convient pour un index de tableau , faudrait verifier les types de valeurs que php accepte pour les index de tableau et donc tu trouveras la fonction a utiliser a la place de " conversion " )
nb_char = conversion(strlen($key) - 1) ;
puis remplacer la partie " $key[strlen($key) - 1] " par :
$key[nb_char]
une autre possibilité , serait de directement faire la conversion entre crochet peut etre :
$key[conversion(strlen($key) - 1)]
Dernière modification par iznobe (Le 15/05/2024, à 23:36)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#5 Le 16/05/2024, à 00:15
- krodelabestiole
Re : Erreur PHP sur un fichier Grav (résolu)
je pense que c'est un problème de compatibilité entre grav et la version de PHP (qui a largement augmenté depuis la 18.04).
il faudrait sûrement mettre grav à jour.
il y a des commandes selfupgrade (pour le CMS) et update (pour les plugins) : https://learn.getgrav.org/17/basics/updates
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#6 Le 16/05/2024, à 07:13
- O_20_100_O
Re : Erreur PHP sur un fichier Grav (résolu)
Bonjour,
Après une mise à jour, ça ira mieux.
Sur mon site GRAV, à jour, ce fichier ne contient pas tout à fait la même chose à ces numéros de ligne.
Mais puisque tu refais ton site sur une nouvelle installation d'Ubuntu, autant refaire aussi une installation de GRAV et de ses plugins et thème utilisés.
Après tu feras un copier coller des répertoires des pages que tu veux reprendre de ta sauvegarde.
Hors ligne
#7 Le 16/05/2024, à 07:50
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Bonjour et merci pour vos avis, que je rejoins (la nuit porte conseil!!); je me suis précipité pour une demande d'aide, mais l'histoire de ce "empty" sonnait tellement faux.
Même si je ne suis qu'amateur informatique ce ne pouvait être qu'un problème de compatibilité, je vais faire des essais multiples, et reviendrait si besoin lorsque j'aurai une réelle demande d'aide, je vous remercie encore. jef
Hors ligne
#8 Le 16/05/2024, à 08:24
- bruno
Re : Erreur PHP sur un fichier Grav (résolu)
+1 pour la mise à jour, surtout qu'il est très probable que d'autres bouts de code posent problème avec les versions récentes de PHP.
P.S. : je ne sais pas comment ce code a pu fonctionner puisque $key est censée être une clé (index ou indice) d'un tableau et ne peut donc pas être elle même un tableau…
#9 Le 16/05/2024, à 09:24
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Oui, la maj sera un passage obligé.
Sinon je reviens plus tôt que prévu ici car désireux de faire des tests, je suis empêché et si cette sous classe du forum n'est pas adaptée je m'en excuse, voici:
je rencontre un problème de droit (rien à voir avec grav), et ne sais si c'est en rapport avec l'install de Mate récente pour laquelle j'ai demandé de l'aide.
-voulant tester au propre une install grav depuis le début, j'ai téléchargé le grav classique histoire de.
-et quand j'ai voulu vider l'archive dans le dossier préparé ds /www, cela m'a été refusé, faute de droit, je suis passé par un clic droit et j'ai choisi en root je crois, voir capture, là je me suis tiré d'affaire.
https://zupimages.net/up/24/20/728x.png
-par contre lorsque j'ai voulu regarder les journaux idem et là je ne sais comment faire, il y a quelque chose qui cloche, et je pressens que ça va m'embêter pour pas mal de choses à l'avenir.
https://zupimages.net/up/24/20/0nsc.png
--
Modération bis : merci d'utiliser des images de petite taille (300x300) ou des miniatures pointant sur ces images.
Dernière modification par bruno (Le 16/05/2024, à 12:01)
Hors ligne
#10 Le 16/05/2024, à 09:31
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
-et quand j'ai voulu vider l'archive dans le dossier préparé ds /www, cela m'a été refusé, faute de droit, je suis passé par un clic droit et j'ai choisi en root je crois, voir capture, là je me suis tiré d'affaire.
Bonjour , non pas vraiment ... au contraire meme !
si tu as lancé en root l ' explorateur de fichiers , tu as probablement cassé les permissions de ta config utilisateur ainsi que rempli la corbeille de " root " , qui devient alors invidable " à la main .
Montre :
history 20
Dernière modification par iznobe (Le 16/05/2024, à 09:32)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#11 Le 16/05/2024, à 09:32
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Je suis bien conscient que ce n'était pas le bon endroit pour poster, et je rajoute ceci pour plus de compréhension:
j'étais sur le point de faire mon premier test grav, et la console m'a renvoyé un truc sur apache, voici pour quoi l'histoire des journaux.
je joins la capture même s'il elle ne concerne pas mon problème de droit ci dessus, qui vient d'autre part, j'espère être clair, quand mon problème de droit sera réglé je pourrais mieux appréhender mon problème apache, merci pour votre compréhension.
jef@jeef-P35-DS3:/home/jef$ sudo chown $USER:www-data /var/www/test1 -R
[sudo] Mot de passe de jef :
jef@jeef-P35-DS3:/home/jef$ sudo chmod -rwx,u+rwX,g+rwX /var/www/test1 -R
jef@jeef-P35-DS3:/home/jef$ sudo systemctl start apache2
jef@jeef-P35-DS3:/home/jef$ sudo nano /etc/apache2/sites-available/test1.conf
jef@jeef-P35-DS3:/home/jef$ sudo a2ensite test1
Enabling site test1.
To activate the new configuration, you need to run:
systemctl reload apache2
jef@jeef-P35-DS3:/home/jef$ sudo systemctl reload apache2
Job for apache2.service failed.
See "systemctl status apache2.service" and "journalctl -xeu apache2.service" for details.
jef@jeef-P35-DS3:/home/jef$ systemctl status apache2.service
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese>
Active: active (running) since Thu 2024-05-16 09:52:49 CEST; 7min ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 753 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUC>
Process: 2568 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=>
Main PID: 894 (apache2)
lines 1-7...skipping...
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2024-05-16 09:52:49 CEST; 7min ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 753 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Process: 2568 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=1/FAILURE)
Main PID: 894 (apache2)
Tasks: 6 (limit: 4536)
Memory: 21.6M
CPU: 230ms
CGroup: /system.slice/apache2.service
├─894 /usr/sbin/apache2 -k start
├─917 /usr/sbin/apache2 -k start
├─918 /usr/sbin/apache2 -k start
├─919 /usr/sbin/apache2 -k start
├─920 /usr/sbin/apache2 -k start
└─921 /usr/sbin/apache2 -k start
Warning: some journal files were not opened due to insufficient permissions.
~
Dernière modification par jefnew (Le 16/05/2024, à 09:41)
Hors ligne
#12 Le 16/05/2024, à 09:35
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Bonjour Iznobe, voici:
jef@jeef-P35-DS3:/home/jef$ history 20
194 sudo apt autoremove --purge atom-beta -y
195 sudo apt install /home/jef/snap/firefox/common/atom-amd64.deb
196 sudo dpkg -i /home/jef/snap/firefox/common/atom-amd64.deb
197 atom
198 dpkg -l | grep "atom"
199 snap list
200 ls -l /var/crash
201 sudo apt clean && sudo apt update
202 sudo apt full-upgrade
203 atom
204 find /etc/apt -type f -regex ".*\(list\|sources\).*" -exec bash -c 'echo -e "\n\t$1\n" ; [ "${1##*.}" = "list" -o "${1##*.}" = "sources" ] && cat "$1"' _ '{}' \;
205 cd /etc/apt/sources.list.d && sudo rm -v atom.list ; cd
206 sudo apt clean && sudo apt update
207 apt list --upgradable
208 apt list --installed
209 atom
210 sudo apt install gthumb
211 sudo systemctl start apache2
212 sudo systemctl stop apache2
213 history 20
jef@jeef-P35-DS3:/home/jef$
Hors ligne
#13 Le 16/05/2024, à 09:46
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
Afin de mieux expliquer ce qui m'arrive, j'étais en train de faire la procédure en console pour tester une install propre d'un site grav, jusqu'au moment où j'ai eu ça:
To activate the new configuration, you need to run:
systemctl reload apache2
jef@jeef-P35-DS3:/home/jef$ sudo systemctl reload apache2
Job for apache2.service failed.
See "systemctl status apache2.service" and "journalctl -xeu apache2.service" for details.
(les trois premières lignes sont tout à fait normales et habituelles, elles font parti du protocole)
j'ai compris qu'un truc n'allait pas du côté d'apache, et j'ai voulu aller voir les journaux,voilà.
Dernière modification par jefnew (Le 16/05/2024, à 09:47)
Hors ligne
#14 Le 16/05/2024, à 09:55
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
comment as tu lancé le navigateur de fichiers en mode root ?
montre :
sudo ls -l /root/share/.local/Trash
Dernière modification par iznobe (Le 16/05/2024, à 09:56)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#15 Le 16/05/2024, à 09:57
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
jef@jeef-P35-DS3:/home/jef$ sudo ls -l /root/share/.local/Trash
[sudo] Mot de passe de jef :
ls: impossible d'accéder à '/root/share/.local/Trash': Aucun fichier ou dossier de ce nom
jef@jeef-P35-DS3:/home/jef$
je ne sais plus précisément, j'ai fait clic droit et ai choisi quelque chose en "root", je pourrai tenter de recommencer l'opération pour pouvoir te préciser, mais je suis pas sûr que ce soit ce qu'il faut faire vu ta réaction.
Dernière modification par jefnew (Le 16/05/2024, à 10:01)
Hors ligne
#16 Le 16/05/2024, à 09:58
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
m ' a trompé
c' est
sudo ls -l /root/.local/share/Trash
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#17 Le 16/05/2024, à 10:02
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
jef@jeef-P35-DS3:/home/jef$ sudo ls -l /root/.local/share/Trash
ls: impossible d'accéder à '/root/.local/share/Trash': Aucun fichier ou dossier de ce nom
jef@jeef-P35-DS3:/home/jef$
Si, une précision, j'étais déjà ds le navigateur de fichier et c'est parce que l'opération de transférer l'archive (le contenu du dossier grav) m'était refusée, que j'ai cherché uns solution par le clic droit, si ça peut t'aider.
Dernière modification par jefnew (Le 16/05/2024, à 10:05)
Hors ligne
#18 Le 16/05/2024, à 10:04
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
bon ba , ca me parait bizzare que tu es lanccé en root le navigateur de fichiers et qu ' il n' y ait rien dans la corbeille root .
Mais tu n' as pas repondu à :
comment as tu lancé le navigateur de fichiers en mode root ?
Dernière modification par iznobe (Le 16/05/2024, à 10:09)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#19 Le 16/05/2024, à 10:06
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
tu veux que je tente de recommencer? je m'arrêterai au bon moment, et comme ça je pourrai te dire.
tu as vu l'ajout au #17
Dernière modification par jefnew (Le 16/05/2024, à 10:07)
Hors ligne
#20 Le 16/05/2024, à 10:08
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
Non inutile .
Autre chose , il faut que tu changes ton repertoire de telechargement par defaut dans firefox , qui est dans snap actuellement .
ca ne va pas cette histoire . c' est surement a cause de ca que tu n' as pas les droits .
tu cliques sur les 3 traits a droite dans firefox puis " parametres " , dans la recherche tu tapes " télé "
puis tu modifies en cliquant sur parcourir pour mettre " Téléchargements " . celui dans ton repertoire perso .
Dernière modification par iznobe (Le 16/05/2024, à 10:10)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#21 Le 16/05/2024, à 10:09
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
c'est réglé et ça tombe bien car c'était une question que j'avais à poser!!
Hors ligne
#22 Le 16/05/2024, à 10:11
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
En synthèse, tu ne vois rien de malsain que l'action d'avoir utilisé root, ai provoqué? donc il demeure cette histoire de droit.
je vais supprimer ce dossier de site /test1 ds /www et recommencer la procédure depuis le début, je te tiens au courant ensuite.
Dernière modification par jefnew (Le 16/05/2024, à 10:13)
Hors ligne
#23 Le 16/05/2024, à 10:13
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
et bien un soucis de moins .
Pour visionner les logs systemes , tu peux par exemple faire :
less /var/log/syslog
tu peux descendre dans la liste avec les fleches , et quand tu veux quitter tu appuies sur " q " .
Dernière modification par iznobe (Le 16/05/2024, à 10:14)
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne
#24 Le 16/05/2024, à 10:17
- jefnew
Re : Erreur PHP sur un fichier Grav (résolu)
jef@jeef-P35-DS3:/home/jef$ less /var/log/syslog
/var/log/syslog: Permission non accordée
jef@jeef-P35-DS3:/home/jef$
Une question tout de même, puis je fermer la console qui se termine par
"lines 19/1/19 end", sans risques?
Hors ligne
#25 Le 16/05/2024, à 10:17
- iznobe
Re : Erreur PHP sur un fichier Grav (résolu)
tu appuies sur " q " , comme indiqué dans mon message précédent .
retour COMPLET et utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .
Hors ligne