El Aucun fichier d'entrée n'a été spécifié est un message qui vous est présenté en raison de l'implémentation de PHP sur votre serveur, qui dans ce cas indique une implémentation CGI (peut être vérifié avec phpinfo()
).
Pour bien expliquer cela, vous devez avoir des notions de base sur la façon dont votre système fonctionne avec les URL. D'après votre fichier .htaccess, il semble que votre CMS s'attende à ce que l'URL soit transmise sous forme de PATH_INFO
variable. Les implémentations de CGI et FastCGI n'ont pas de variables de type PATH_INFO
disponible, donc lorsque vous essayez de passer l'URI, PHP échoue avec ce message.
Nous devons trouver une alternative.
Une option est d'essayer de réparer cela. En regardant dans la documentation de directives de base du php.ini vous pouvez voir que vous pouvez modifier le fonctionnement pour votre mise en œuvre. Cependant, GoDaddy ne vous permettra probablement pas de modifier les paramètres PHP dans un environnement partagé.
Nous devons trouver une alternative à la modification des paramètres PHP.
Regarder dans system/uri.php
à la ligne 40, vous verrez que le CMS tente deux types de détection d'URI - le premier étant PATH_INFO
dont on vient d'apprendre qu'elle ne fonctionne pas - l'autre étant la REQUEST_URI
.
Cela devrait suffire - mais l'analyse de l'URI passé vous causera plus de problèmes, car l'URI, que vous pourriez passer à REQUEST_URI
variable, forces parse_url()
pour ne renvoyer que le chemin d'accès à l'URL - ce qui vous ramène à zéro.
Maintenant, il ne reste qu'une seule possibilité, celle de changer le cœur du CMS. La partie détection des URI est insuffisante.
Ajouter QUERY_STRING
au tableau de la ligne 40 comme le premier élément en system/uri.php
et changez votre .htaccess pour qu'il ressemble à ceci :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
Ceci passera l'URI que vous demandez à index.php
como QUERY_STRING
et avoir la détection de l'URI pour le trouver.
D'autre part, cela rend impossible la mise à jour du CMS sans modifier les fichiers de base jusqu'à ce que cela soit corrigé. Ça craint...
Vous avez besoin d'une meilleure option ?
Trouvez un meilleur CMS.