Bonjour,
Dans le fichier htaccess.txt fourni par la distribution de SPIP (<5.0), il y a une règle générique pour empêcher la lecture du fichier composer.json cf. htaccess.txt · 4.4 · spip / spip · GitLab
Personnellement, je trouverai logique que tous les fichiers donnant une information « critique » sur la version d’un site soient interdits d’accès. C’est un grand sujet, je sais.
J’ai besoin de vos conseils sur le sujet. Quels fichiers à garder en lecture ? Quelles règles à mettre en place dans mon fichier .htaccess ?
Et donc, pour en revenir au « problème » initial avec spip.net, c’est normal car je déploie le site avec checkout qui comme son nom l’indique fait une installation par git. Si tu testes sur un site installé par spip_loader, par zip tu n’auras pas ces fichiers sur le serveur.
Je n’installe pas mes sites sur spip_loader.php (du moins pas ceux que j’ai en tête). Ils sont installés par le biais de spip-cli avec docker IPEOS/spip.
Edit : Si je comprends bien, le générateur du zip de la distribution de SPIP enlève des fichiers. Peux-tu me redonner le lien vers ce générateur stp ? Je l’étudierai pour ma problématique.
J’ai une autre remarque : compenser l’accès ou l’interdiction d’accès de fichiers par le web avec un fichier .htaccess, c’est un pis-aller :
ça ne marche que si spip est exposé via un serveur apache httpd, mais pas nginx, ni un autre.
il faut que ce serveur apache soit configuré pour que .htaccess soit lu et évalué. Quand c’est actif, il est évalué à chaque requête http, ce qui n’est pas très bon pour les perfs.
spip expose tous ses fichiers sur le web parce qu’il est conçu comme ça : le point d’entrée d’un site public (spip.php) étant à la racine du projet. @marcimat l’a évoqué dans le passé, avec un sous-dossier public/, on aurait moins ce genre de problème à régler. Mais on en aurait d’autres !
@Ybbet, je pense que, étant données les spécificités de tes installations, le mieux serait pour toi de mettre le contenu du htaccess fourni par spip et d’ajouter des règles de sécu dans la conf apache directement … et tes retours là-dessus seront les bienvenus.
Sinon, autre chose, il semble que les tests unitaires du plugin archiviste soient bien présents dans le zip spip de la dernière release. Ils sont pourtant ignorés dans le fichier .gitattributes.gitattributes · 2.2.3 · spip / archiviste · GitLab. Ce serait bien qu’on regarde ça avant la release 4.4.6 ?
Merci pour vos pistes. Je vais regarder un peu cela. @JamesRezo on est sur le même constat en interne. .htaccess a ses limites, on passe par la conf apache.
Il faut qu’on voit pour les règles à mettre en place pour les exclusions. Il ne faudrait pas qu’on interdise un fichier auquel SPIP a besoin pour son bon fonctionnement.