Actions

Fehlerbehebung

From LimeSurvey Manual

Revision as of 08:10, 26 July 2023 by Maren.fritz (talk | contribs)



Template:Hinweis


Allgemein

Diese Seite listet typische technische Probleme und deren Lösungen „nach“ einer erfolgreichen Installation auf. Wenn Sie Probleme beheben müssen, die während der Installation auftreten, lesen Sie bitte die Installations-FAQ.

Beim Versuch, die Administrations-Anmeldeseite zu öffnen

Fehlermeldung: „Keine Eingabedatei angegeben“ nach der Installation

oder

Jede URL führt dazu, dass Sie auf der Umfragelistenseite landen

Während des Installationsprozesses versucht LimeSurvey, die beste Lösung für das URL-Format zu ermitteln. Manchmal funktioniert das nicht richtig.

Sie müssen LimeSurvey dazu zwingen, ein anderes URL-Manager-System zu verwenden, indem Sie Ihre Konfigurationsdatei bearbeiten.

In /application/config/config.php ersetzen

  'urlFormat' => 'path',			

dadurch:

  'urlFormat' => 'get',

Versuchen Sie dann, das Administrationspanel zu öffnen, indem Sie die kurze Admin-URL:

verwenden. http://<yourserver.net> /<limesurvey_dir> /Administrator

Nach dem Einloggen in die Administration

Bei jeder Aktion auf der Admin-Seite kehren Sie zum Anmeldebildschirm zurück

Dies kann aus den folgenden Hauptgründen passieren:

  • PHP-Sitzungsprobleme
  • UTF8-Kodierungsprobleme
  • IE-Probleme

PHP-Sitzungen:

  1. Upload_tmp_dir und session.save_path in php.ini aktualisieren
  2. Erstellen Sie die konfigurierte Sitzung und laden Sie Verzeichnisse hoch
  3. IIS: Berechtigung zum Erstellen und Ändern des IIS-Gastbenutzerkontos zugewiesen
  4. Apache : Stellen Sie sicher, dass Ihr Webserver Berechtigungen zum Schreiben in das konfigurierte Verzeichnis hat
  5. Überprüfen Sie, ob die Variable „session.use_cookies“ in php.ini auf 1 gesetzt ist.
  6. Überprüfen Sie die Variable „session.auto_start“ in php. ini. Wenn es auf 1 gesetzt ist, ändern Sie es auf 0.

Probleme mit dem Internet Explorer LimeSurvey unterstützt den Zugriff auf die Administrationsoberfläche über den Internet Explorer nicht mehr.

UTF8-Kodierung:

Wenn Sie eine Datei bearbeiten (höchstwahrscheinlich config.php), speichern Sie sie nicht als UTF8, um spezielle Sprachzeichen zu unterstützen! Speichern Sie .php-Dateien immer im echten ANSI/ISO-Format.

Das Senden einer Seite, die eine große Anzahl von Fragen/Antwortoptionen/Unterfragen enthält, funktioniert nicht

In PHP 5.3.9 wurde eine neue Einstellung eingeführt (und wurde sogar auf einige frühere PHP-Versionen zurückportiert): max_input_vars. Diese Einstellung begrenzt die maximale Anzahl von Variablen, die an den Server gesendet (gesendet) werden können. Standard ist auf 1000 eingestellt, aber wenn Sie eine Frage mit vielen Antwortoptionen oder eine Umfrageseite mit vielen, vielen Fragen/Antworten haben Dieser Grenzwert könnte überschritten werden. Sie müssen dies in Ihrer PHP-Konfigurationsdatei (php.ini) festlegen.

Daten werden bei Verwendung von MSSQL Server mit FreeTDS unter Linux nicht korrekt angezeigt

Suchen Sie die Datei „locales.conf“ von FreeTDS und bearbeiten Sie sie. Wenn Sie keine anderen Anwendungen haben, die FreeTDS verwenden, ersetzen Sie einfach den Inhalt durch

[Standard]
 Datumsformat = %Y-% m- %d %H:% M: %S.% z

Wenn Sie andere Anwendungen haben, die FreeTDS verwenden, sollten Sie zunächst prüfen, welches Gebietsschema Sie bearbeiten müssen.

Speichern Sie den Server und starten Sie ihn neu. Die Daten sollten nun korrekt angezeigt werden. Wenn dies nicht funktioniert, haben Sie möglicherweise die falsche Datei bearbeitet – spülen Sie den Vorgang aus und wiederholen Sie den Vorgang.

Wenn ich Sonderzeichen (Chinesisch, Kyrillisch, Griechisch, Arabisch) in meine Umfrage oder Verwaltung eingebe, wird jedes Zeichen als Fragezeichen angezeigt?

Dies geschieht, wenn Ihre Datenbank selbst nicht für die Verwendung eines UTF-8-Zeichensatzes erstellt wurde. Dies kann passieren, wenn Sie die Datenbank über ein Anbieterverwaltungspanel erstellen müssen. Sie können dieses Problem beheben, indem Sie den folgenden SQL-Befehl in Ihrer Datenbank ausführen (z. B. mit phpMyAdmin) ALTER DATABASE `<your_database_name> ` STANDARDZEICHENSATZ utf8 COLLATE utf8_unicode_ci;

Ersetzen<your_database_name> mit dem Namen Ihrer Datenbank. 'Sie müssen dies tun, bevor Sie LimeSurvey installieren.

PageSpeed verursacht einige Probleme bei Limesurvey

Sie sollten ModPagespeed in Ihren virtuellen LimeSurvey-Host integrieren.

Andernfalls können Sie ConfortUpdate weder verwenden noch Daten exportieren. Wahrscheinlich wird etwas anderes scheitern.

Während der Teilnahme an einer Umfrage

Fehler „Sitzung ist abgelaufen“

Möglicherweise erhalten Sie irgendwann eine Nachricht wie:

FEHLER

Es tut uns leid, aber Ihre Sitzung ist abgelaufen.

Entweder waren Sie zu lange inaktiv, Sie haben Cookies für Ihren Browser deaktiviert oder es gab Probleme mit Ihrer Verbindung.

Wenn Suhosin auf Ihrem Server aktiviert ist, kann dies der Grund dafür sein, dass Sie dies mitten in einer Umfrage erhalten.

Template:Hinweis

Suhosin ist ein erweitertes Schutzsystem für PHP-Installationen, aber die Standardkonfiguration von Suhosin kann Probleme mit LimeSurvey verursachen.

Überprüfen und testen Sie zunächst mithilfe des Suhosin-Protokolls, indem Sie suhosin.log.sapi = 511 und suhosin.simulation = on gemäß der Suhosin-Dokumentation festlegen.

Die Konfigurationsdatei befindet sich normalerweise in /etc/php5/apache2/conf.d/suhosin.ini, aber um sicherzugehen, können Sie Ihre PHP-Info überprüfen (LimeSurvey-Administration > Globale Einstellungen > Schaltfläche „PHP-Info anzeigen“ > Zeile: „Zusätzliche .ini-Dateien analysiert“. "), um den richtigen Pfad zu erhalten.

Vergessen Sie nicht, Ihren Apache/Nginx-Server neu zu starten, damit die Parameter berücksichtigt werden (Service Apache2-Neustart oder Service Nginx-Neustart).

Wenn die Simulation aktiviert ist, blockiert Suhosin nichts und die Fehler werden in den Protokollen gemeldet (normalerweise in Ihrem Systemprotokoll: /var/log/syslog). Wenn Sie eine Fehlermeldung wie „ALERT-SIMULATION – konfiguriertes POST-Variablenlimit überschritten“ erhalten, das ist Suhosin-Alarmierung …, versuchen Sie die folgende Konfiguration (die mit LimeSurvey gut zu funktionieren scheint):

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

Mit diesen Parametern sollten Sie in der Lage sein, die Einstellung suhosin.simulation zurück auf den "off"-Wert zu stellen (so dass der Server geschützt ist und LimeSurvey immer noch funktioniert).

The default values of Suhosin are not working well with LimeSurvey. If you really want to secure your server tightly, you might want to use the simulation mode to tune the setting and find the good values between 1000 and 5000 for the vars and 1000000 and 5000000 for the value_lengths.

Note: There was an additional PHP setting introduced recently which needs to be tweaked, too: max_input_vars - this setting is the same as suhosin.post.max_vars but needs to be set separately in php.ini.

Ich kann die Sprache nicht ändern!

No matter what language you choose, the interface (admin and user) are always displayed in the English language. Normally, this is caused by a bug in your PHP version. There is no other fix for this than updating your PHP version.

Some common errors (IIS focused)

Index.php won't open

Possible cause: This might happen if you haven't installed the necessary extensions

  • You need to install Multi-byte string and MSSQL (or MySQL) extensions


Possible cause: ISAPI filter not configured

  • In IIS, for the website (you could do it at the directory level) you must configure it to use php5isapi.dll


Index.php won't open and "php.exe -i" gives error messages about missing .dll's

This may happen if you install too many extensions

  • If you install all PHP extensions, PHP will fail because not all dependencies were met (e.g., the oracle package needs oracle dll's)
  • Install only the extensions you need
  • To test, try running php.exe -i from the command line

Message stating database was missing

This may happen if you navigate to wrong url:

  • Make sure you go to limesurvey/admin/install/index.php instead of limesurvey/index.php !

Above fixes do not solve the problem

This may happen if you have not restarted IIS

  • Restart IIS

Things that are easy to forget:

  • .php needs to be associated to filter php5isapi.dll
  • limesurvey/tmp directory needs writing permission for survey uploads
  • updating doc_root in php.ini and $rootdir in config.php

Missing files ("No such file or directory")

When uploading LimeSurvey to your server it might happen that the connection is interrupted so that some files are not transferred or not transferred completely. Depending on the files, you can get different error messages whenever you access different features/parts of LimeSurvey. The missing files throw errors look like this:

"Warning: require_once(/path/to/your/limesurvey/installation/filename) [function.require-once]: failed to open stream: No such file or directory in /path/to/your/limesurvey/installation/filename on line 12345" OR

"Fatal error: require_once() [function.require]: Failed opening required 'require_once(/path/to/your/limesurvey/installation/filename)' (include_path='.:/x/y/z) in /path/to/your/limesurvey/installation/filename on line 12345"

Lösung

1. Löschen Sie alle hochgeladenen Dateien.

2. Laden Sie die Dateien erneut hoch.

(3. Wenn notwendig: Nochmals neu installieren)

After submitting a page, you end up on the general index page/on a 404 page or you get the message 'The CSRF token could not be verified'

or

After clicking 'Next' on a page which contains a big number of answers/subquestions, not all responses are being saved

or

After clicking 'Next', I end up on the same page

or

Using the quick translation system doesn't save answers or subquestions

or

When exporting a big number of response fields, not all of them are being exported

  • This is most likely because of a limiting setting in your webserver: max_input_vars . This setting limits the maximum number of variables that can be POSTed (submitted) to the server.

Default is set to 1000, but if you have a question with lots of answer options or a survey page with lots and lots of questions/answers, this limit might be exceeded. You will need to edit your PHP configuration (php.ini).

  • Also, check your PHP settings if your host is using the Suhosin extension for Apache which may be set to be too limiting on a couple of settings.
  • For example, the two settings "suhosin.post.max_vars" and "suhosin.request.max_vars" are both set to a value of 200 by default. Increase those settings both to 400 or higher so users can complete and submit long surveys.
  • If you still have problems, try switching the module to simulation_mode (and so basically deactivate it), as the maximum value always depends on your particular survey.
  • Another reason might be a proxy or a similar software which does not allow big post requests or requesting the same page several times in the background (which leads to a new CSRF-key being created). Try a different internet connection in this case.

No questions are shown when using MSSQL Server with FreeTDS on Linux

If you check carefully any question group there is a space in the group relevance which makes the entire group non-relevant. The underlying problem is that your FreeTDS returns spaces on empty fields because of a misconfiguration. You can fix this problem by forcing the FreeTDS protocol version to at least 8.0. So, edit freetds.conf (e.g. /etc/freetds/freetds.conf) and change the respective line to

    tds version = 8.0

That should fix this issue.

After taking the survey

Texts that were entered by the participant appear as question marks in the results

This happens if your database itself does not by default use an UTF-8 charset. This can happen when you have to create the database using a provider administration panel. You can fix this problem by executing the following SQL command on your database (using for example phpMyAdmin):

   ALTER DATABASE `<your_database_name>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Replace <your_database_name> with the name of your database. After you did that, deactivate your survey and activate it again.

Database specific issues

I want LimeSurvey to use a specific Postgres schema

Set in config.php 'initSQLs' => array('SET search_path TO "LimeSurvey";'), See config-defaults for an example.