Salut bazooka.
d'abord, merci de ta contribution et du temps passé dessus.
ce qui suit n'engage que moi et d'ailleurs j'ai le même défaut dans le sens inverse et je vais devoir m'installer une machine sous Nginx.
je m'explique j'ai tendance a oublier les autres serveurs existant Apache n'étant pas le seul donc quand je programme je ne m'attarde pas sur les différences potentielles avec les autres.
il me semble que Max développe sous Apache et s'il est comme moi cela demande un peut de recherche afin de faire côtoyer ngnix et apache (et j'avoue que je trouve ça chiant ^^). d'ailleurs même si la documentation n'est pas complète cette partie est bien spécifiée, "un serveur tournant sous Apache"
Du coup j'imagine que tu fais comme moi mais dans l'autre sens avec ngnix first.
J'ai fait une installation neuve sur un serveur Nginx couplé à 2 serveurs php-fpm avec PHP 7.4 et PHP 8.3. Et aucun message d'erreur.
Il n'est pas à la racine du site mais dans le dossier 299ko du DocumentRoot
Pour gérer les redirections de 299ko, il faut ajouter les lignes suivantes dans la config de Nginx
location ~ ^/299ko/(?!index.php) {
try_files $uri /299ko/index.php;
}
L'intérêt des serveurs est de pouvoir faire des tests sous différentes versions de PHP simplement avec des noms d'otes virtuels différents. Avec un serveur Apache, c'est plus compliqué.
Alors en soit je trouve pas ça plus compliqué sous Apache, en général si tu te fais héberger c'est pas ton soucis, si tu es en dev, sous linux plus compliqué car rien de vraiment automatisé a ma connaissance mais sous windows le travail d'Otomatic (un peut plus de 80 ans le Monsieur ^^) comme mainteneur de WAMP Serveur fait des miracle et permet la même chose. je dois avoir une install de 299ko sous différentes versions de php gérés grâce aux vhost.
En ce qui concerne le font du problème, dans common.php
define('BASE_PATH', rtrim(dirname($_SERVER['SCRIPT_NAME']), '/'));
renvoi une chaine vide ce que Apache ne gère pas si j'ai bien compris d'après mes recherche.
malgré que l'installation fonctionne ( bonne configuration dans le fichier config.json lors de la création du dossier data/ a la racine) .
je pense que ça ne gène pas (et c'est pour cela que j'ai une double définition de BASE_PATH suite a ton commit car install.php est a la racine du site et pas common.php.
il faudrait donc essayer de modifier la définition de BASE_PATH dans ta version de common.php en la remplaçant par celle-ci:
$basePath = dirname($_SERVER['SCRIPT_NAME']);
if ($basePath === "\\" || $basePath === "/") {
$basePath = ''; // On évite d'avoir un caractère seul inutile
}
define('BASE_PATH', rtrim($basePath, `'/'));`
après avoir fais cette modification chez moi, le retour a la normal sur Apache, donc a voir si sur Ngnix ça passe... (à toi de nous faire le retour)
cependant ton travail permettrai d'avoir une version qui tourne sur les deux et ce serait honnêtement plus cool, afin de toucher un public plus large.
a bientôt 😉