Actions

Dépannage

From LimeSurvey Manual

This page is a translated version of the page Troubleshooting and the translation is 100% complete.



Template:Remarque


Général

Cette page répertorie les problèmes techniques typiques et leurs solutions après une installation réussie. Si vous devez résoudre des problèmes survenant lors de l'installation, veuillez vous référer à la FAQ sur l'installation.

Lorsque vous essayez d'ouvrir la page de connexion d'administration

Message d'erreur : "Aucun fichier d'entrée spécifié" après l'installation

ou

N'importe quelle URL vous permet de vous retrouver sur la page de la liste des enquêtes

Pendant le processus d'installation, LimeSurvey essaie de déterminer la meilleure solution pour le format d'URL. Parfois, cela ne fonctionne pas correctement.

Vous devez forcer LimeSurvey à utiliser un autre système de gestion d'URL en éditant votre fichier de configuration.

Dans /application/config/config.php remplacez

  'urlFormat' => 'chemin',			

par ça:

  'urlFormat' => 'obtenir',

Essayez ensuite d'ouvrir le panneau d'administration en utilisant l'URL d'administration courte :

http://<yourserver.net> /<limesurvey_dir> /admin

Après vous être connecté à l'administration

Toute action sur la page d'administration vous ramènera à l'écran de connexion

Cela peut se produire pour les principales raisons suivantes :

  • Problèmes de sessions PHP
  • Problèmes d'encodage UTF8
  • Problèmes IE

Sessions PHP :

  1. Mettre à jour upload_tmp_dir et session.save_path dans php.ini
  2. Créer la session configurée et télécharger les répertoires
  3. IIS : autorisation attribuée pour créer et modifier le compte d'utilisateur invité IIS 
  4. Apache : Assurez-vous que votre serveur Web dispose des autorisations pour écrire dans le répertoire configuré
  5. Vérifiez si la variable "session.use_cookies" dans php.ini est définie sur 1.
  6. Vérifiez la variable "session.auto_start" dans php. ini. S'il est défini sur 1, remplacez-le par 0.

Problèmes avec Internet Explorer LimeSurvey ne prend plus en charge l'accès à l'interface d'administration via Internet Explorer.

Encodage UTF8 :

Si vous modifiez un fichier (très probablement config.php), ne l'enregistrez pas au format UTF8 pour prendre en charge les caractères de langage spéciaux ! Enregistrez toujours les fichiers .php au véritable format ANSI/ISO.

Soumettre une page contenant un grand nombre de questions/options de réponse/sous-questions ne fonctionne pas

Un nouveau paramètre a été introduit dans PHP 5.3.9 (et a même été rétroporté vers certaines versions antérieures de PHP) : max_input_vars. Ce paramètre limite le nombre maximum de variables qui peuvent être POSTées (soumises) au serveur. La valeur par défaut est définie sur 1 000, mais si vous avez une question avec de nombreuses options de réponse ou une page d'enquête avec de nombreuses questions/réponses cette limite pourrait être dépassée. Vous devrez définir cela dans votre fichier de configuration PHP (php.ini).

Les dates ne s'affichent pas correctement en utilisant MSSQL Server avec FreeTDS sous Linux

Localisez le fichier locales.conf de FreeTDS et modifiez-le. Si vous n'avez aucune autre application utilisant FreeTDS, remplacez simplement le contenu par

[par défaut]
 format de date = %Y-% m- %d %H:% M: %S.% z

Si vous avez d'autres applications utilisant FreeTDS, vous souhaiterez peut-être d'abord vérifier les paramètres régionaux que vous devez modifier.

Enregistrez et redémarrez le serveur. Les dates devraient maintenant être affichées correctement. Si cela ne fonctionne pas, vous avez peut-être modifié le mauvais fichier - rincez et répétez.

Lorsque je saisis des caractères spéciaux (chinois, cyrillique, grec, arabe) dans mon enquête ou administration, chaque caractère est affiché sous forme de point d'interrogation ?

Cela se produit si votre base de données elle-même n'est pas créée pour utiliser un jeu de caractères UTF-8. Cela peut se produire lorsque vous devez créer la base de données à l'aide d'un panneau d'administration du fournisseur. Vous pouvez résoudre ce problème en exécutant la commande SQL suivante sur votre base de données (en utilisant par exemple phpMyAdmin)  ALTER DATABASE `<your_database_name> ` JEU DE CARACTÈRES PAR DÉFAUT utf8 COLLATE utf8_unicode_ci;

Remplacer<your_database_name> avec le nom de votre base de données. Vous devez le faire avant d'installer LimeSurvey.

PageSpeed crée quelques problèmes à Limesurvey

Vous devez désactiver ModPagespeed dans votre hôte virtuel LimeSurvey.

Dans le cas contraire, vous ne pourrez ni utiliser ConfortUpdate, ni exporter de données. Il est probable que quelque chose d'autre échouera.

Pendant une enquête

Erreur "La session a expiré"

Vous pourriez à un moment donné recevoir un message du type :

ERREUR

Nous sommes désolés mais votre session est expirée.

Soit vous êtes resté inactif trop longtemps, soit vous avez désactivé les cookies de votre navigateur, soit il y a eu des problèmes avec votre connexion.

Si Suhosin est activé sur votre serveur, cela pourrait être la raison pour laquelle vous obtenez cela au milieu d'une enquête.

Template:Remarque

Suhosin est un système de protection avancé pour les installations PHP mais la configuration par défaut de Suhosin peut créer des problèmes avec LimeSurvey.

Tout d'abord, vérifiez et testez à l'aide du journal Suhosin en définissant suhosin.log.sapi = 511 et suhosin.simulation = on conformément à la Documentation Suhosin.

Le fichier de configuration se trouve généralement dans /etc/php5/apache2/conf.d/suhosin.ini, mais pour être sûr, vous pouvez vérifier votre phpinfo (administration LimeSurvey > Paramètres globaux > Bouton Afficher phpinfo > Ligne : "Fichiers .ini supplémentaires analysés ") pour obtenir le chemin correct.

N'oubliez pas de redémarrer votre serveur Apache/Nginx pour que les paramètres soient pris en compte (service apache2 restart ou service nginx restart).

Lorsque la simulation est activée, Suhosin ne bloque rien et les erreurs sont signalées dans les journaux (généralement dans votre journal système : /var/log/syslog). Si vous recevez un message d'erreur tel que "ALERTE-SIMULATION - limite de variable POST configurée dépassée" qui est une alerte Suhosin...", essayez la configuration suivante (qui semble bien fonctionner avec LimeSurvey) :

suhosin.memory_limit = 128
suhosin.post.max_value_length = 5000000
suhosin.post.max_vars = 5000
suhosin.request.max_value_length = 5000000
suhosin.request.max_vars = 5000

Avec ces paramètres, vous devriez pouvoir remettre suhosin.simulation sur la valeur "off" (afin que le serveur soit protégé et que LimeSurvey fonctionne toujours).

Les valeurs par défaut de Suhosin ne fonctionnent pas bien avec LimeSurvey. Si vous souhaitez vraiment sécuriser étroitement votre serveur, vous souhaiterez peut-être utiliser le mode simulation pour ajuster le paramètre et trouver les bonnes valeurs entre 1 000 et 5 000 pour les vars et 1 000 000 et 5 000 000 pour les value_lengths.

Remarque : Un paramètre PHP supplémentaire a été introduit récemment qui doit également être modifié : max_input_vars - ce paramètre est le même que suhosin.post.max_vars mais doit être défini séparément dans php.ini.

Je ne peux pas changer la langue !

Quelle que soit la langue que vous choisissez, l'interface (administrateur et utilisateur) est toujours affichée en anglais. Normalement, cela est dû à un bug dans votre version PHP. Il n’y a pas d’autre solution à ce problème que de mettre à jour votre version PHP.

Quelques erreurs courantes (axées sur IIS)

Index.php ne s'ouvre pas

Cause possible : Cela peut se produire si vous n'avez pas installé les extensions nécessaires 

  • Vous devez installer des extensions de chaîne multi-octets et MSSQL (ou MySQL).


Cause possible : filtre ISAPI non configuré

  • Dans IIS, pour le site web (vous pourriez le faire au niveau du répertoire) vous devez le configurer pour utiliser php5isapi.dll


Index.php ne s'ouvre pas et "php.exe -i" donne des messages d'erreur concernant les fichiers .dll manquants

Cela peut arriver si vous installez trop d'extensions 

  • Si vous installez toutes les extensions PHP, PHP échouera car toutes les dépendances n'ont pas été respectées (par exemple, le package Oracle a besoin de DLL Oracle)
  • Installez uniquement les extensions dont vous avez besoin ! N !* Pour tester, essayez d'exécuter php.exe -i depuis la ligne de commande

Message indiquant que la base de données était manquante

Cela peut arriver si vous accédez à une mauvaise URL :

  • Assurez-vous d'aller dans limesurvey/admin/install/index.php au lieu de limesurvey/index.php !

Les correctifs ci-dessus ne résolvent pas le problème

Cela peut se produire si vous n'avez pas redémarré IIS

  • Redémarrer IIS

Choses faciles à oublier :

  • .php doit être associé pour filtrer php5isapi.dll
  • Le répertoire limesurvey/tmp nécessite une autorisation d'écriture pour les téléchargements d'enquêtes
  • mise à jour de doc_root dans php.ini et $rootdir dans config.php

Fichiers manquants ("Aucun fichier ou répertoire de ce type")

Lors du téléchargement de LimeSurvey sur votre serveur, il peut arriver que la connexion soit interrompue et que certains fichiers ne soient pas transférés ou pas complètement. En fonction des fichiers, vous pouvez recevoir différents messages d'erreur chaque fois que vous accédez à différentes fonctionnalités/parties de LimeSurvey. Les erreurs de fichiers manquants ressemblent à ceci :

"Avertissement : require_once(/path/to/your/limesurvey/installation/filename) [function.require-once] : échec de l'ouverture du flux : aucun fichier ou répertoire de ce type dans /path/to/your/limesurvey/installation/filename sur ligne 12345" OU

"Erreur fatale : require_once() [function.require] : échec de l'ouverture requise 'require_once(/path/to/your/limesurvey/installation/filename)' (include_path='.:/x/y/z) dans /path/ à/votre/limesurvey/installation/nom de fichier sur la ligne 12345"

Solution

1. Supprimez tous les fichiers téléchargés.

2. Re-téléchargez les fichiers.

(3. Si nécessaire : réinstallez en accédant à /limesurveyfolder/admin/install)

Après avoir soumis une page, vous vous retrouvez sur la page d'index général/sur une page 404 ou vous obtenez le message 'Le token CSRF n'a pas pu être vérifié'

ou

Après avoir cliqué sur 'Suivant' sur une page qui contient un grand nombre de réponses/sous-questions, toutes les réponses ne sont pas enregistrées

ou

Après avoir cliqué sur 'Suivant', je me retrouve sur la même page

ou

L'utilisation du système de traduction rapide n'enregistre pas les réponses ou les sous-questions

ou

Lors de l'exportation d'un grand nombre de champs de réponse, tous ne sont pas exportés

  • Cela est probablement dû à un paramètre limitatif de votre serveur Web : max_input_vars . Ce paramètre limite le nombre maximum de variables qui peuvent être POSTées (soumises) au serveur.

La valeur par défaut est définie sur 1 000, mais si vous avez une question avec de nombreuses options de réponse ou une page d'enquête avec de nombreuses questions/ réponses, cette limite pourrait être dépassée. Vous devrez modifier votre configuration PHP (php.ini).

  • Vérifiez également vos paramètres PHP si votre hébergeur utilise l'extension Suhosin pour Apache qui peut être configurée pour être trop limitative sur certains paramètres.
  • Par exemple, les deux paramètres « suhosin.post.max_vars » et « suhosin.request.max_vars » sont tous deux définis sur une valeur de 200 par défaut. Augmentez ces paramètres à 400 ou plus afin que les utilisateurs puissent répondre et soumettre de longues enquêtes.
  • Si vous rencontrez toujours des problèmes, essayez de passer le module en simulation_mode (et donc de le désactiver), car la valeur maximale dépend toujours de votre enquête particulière.
  • Une autre raison pourrait être un proxy ou un logiciel similaire qui ne permet pas de grosses demandes de publication ou de demander la même page plusieurs fois en arrière-plan (ce qui conduit à la création d'une nouvelle clé CSRF). Essayez une autre connexion Internet dans ce cas.

Aucune question n'est affichée lors de l'utilisation de MSSQL Server avec FreeTDS sous Linux

Si vous vérifiez attentivement un groupe de questions, il y a un espace dans la pertinence du groupe qui rend l'ensemble du groupe non pertinent. Le problème sous-jacent est que votre FreeTDS renvoie des espaces sur des champs vides en raison d'une mauvaise configuration. Vous pouvez résoudre ce problème en forçant la version du protocole FreeTDS à au moins 8.0. Alors, éditez freetds.conf (par exemple /etc/freetds/freetds.conf) et changez la ligne correspondante en

    version tds = 8.0

Cela devrait résoudre ce problème.

Après avoir répondu au sondage

Les textes saisis par le participant apparaissent sous forme de points d'interrogation dans les résultats

Cela se produit si votre base de données elle-même n'utilise pas par défaut un jeu de caractères UTF-8. Cela peut se produire lorsque vous devez créer la base de données à l'aide d'un panneau d'administration du fournisseur. Vous pouvez résoudre ce problème en exécutant la commande SQL suivante sur votre base de données (en utilisant par exemple phpMyAdmin) :

   MODIFIER LA BASE DE DONNÉES `<your_database_name> ` JEU DE CARACTÈRES PAR DÉFAUT utf8 COLLATE utf8_unicode_ci;

Remplacer<your_database_name> avec le nom de votre base de données. Après cela, désactivez votre enquête et réactivez-la.

Problèmes spécifiques à la base de données

Je veux que LimeSurvey utilise un schéma Postgres spécifique

Défini dans config.php 'initSQLs' => array('SET search_path TO "LimeSurvey";'), Voir les valeurs par défaut de configuration pour un exemple.