Actions

Problemen oplossen

From LimeSurvey Manual

Revision as of 20:49, 4 June 2013 by Han (talk | contribs) (Created page with "De standaardwaarden van Suhosin werken niet goed voor LimeSurvey. Als je echt je server streng wilt beschermen dan kun je de simulation mode gebruiken om de instellingen uit t...")

Algemeen

Op deze pagina worden de technische problemen en de oplossingen behandeld na een gelukte installatie. Als je problemen wilt oplossen die tijdens de installatie kunnen voorkomen, lees dan Installatie FAQ.

Inloggen op administratie-gedeelte mislukt

Foutbericht: "No input file specified" na installatie

Bij de installatie probeert LimeSurvey het beste URL-formaat te bepalen. Soms werkt dit niet goed.

Je moet in LimeSurvey aangeven dat er een ander URL manager system gebruikt moet worden door je config bestand te wijzigen.

Vervang in /application/config/config.php

     'urlFormat' => 'path',			


door:

     'urlFormat' => 'get',

Na inloggen als beheerder

Bij elke actie krijg je het inlogscherm

Hierbij zijn de meest voorkomende oorzaken:

  • PHP sessie problemen
  • UTF8 encoding problemen
  • IE (6,7 en 8) problemen

PHP Sessie :

  1. Wijzig upload_tmp_dir en session.save_path in php.ini
  2. Maak de configureerde session en upload mappen aan
  3. IIS: Rechten toegekend om IIS guest user account aan te maken en te wijzigen
  4. Apache: Controleer of je webserver schrijfrechten heeft in de configureerde map
  5. Controleer of de variabele "session.use_cookies" in php.ini op 1 staat.
  6. Controleer de variabele "session.auto_start" in php.ini. Als de waarde 1 is, wijzig dit dan in 0.

UTF8 Encoding :

Als je een bestand wijzigt (zeker config.php), sla het dan niet op als UTF8 om speciale tekens te bewaren. Sla een php-bestand altijd op in true ANSI/ISO formaat. Vanaf versie 1.87 kun je de belangrijkste instellingen wijzigen met de applicatie in het onderdeel 'Instellingen' (bijv. naam website, de beheerder, ...).

IE Cookies :

In IE (6,7 en 8) kan geen underscore "_" in de server hostname gebruikt worden. In dat geval kunnen er geen cookies aangemaakt worden. Wijzig in dat geval de server hostname in Apache / IIS.

Tijdens invullen van een enquête

Foutmelding "Session has expired"

Je kunt een melding als volgt krijgen:

ERROR

We are sorry but your session has expired.

Of je hebt te lang gewacht met iets te doen, of je hebt cookies in je browser uitgeschakeld, of je hebt verbindingsproblemen.

Als je Suhosin gebruikt op je server, dan kan dat ook een oorzaak zijn van deze storing.

NB.: Als je enquête niet actief is, dan kan de werking anders zijn en kun je tijdens het invullen opeens de lijst met enquêtes te zien krijgen. De oplossing is hetzelfde.

Suhosin is een geavanceerd systeem ter bescherming van PHP installaties maar de Suhosin standaard configuratie kan problemen opleveren voor LimeSurvey.

Test eerst met de Suhosin log, door suhosin.log.sapi = 511 en suhosin.simulation = on te zetten, dit volgens de Suhosin documentatie.

Het configuratie-bestand staat meestal in /etc/php5/apache2/conf.d/suhosin.ini maar je kunt dit in je phpinfo controleren (dit kan ook via LimeSurvey > Instellingen > knop Toon PHPInfo > Regel : "Additional .ini files parsed") om het pad te vinden.

Vergeet niet om je Apache server opnieuw te starten.

Bij simulatie zal Suhosin niets tegenhouden en worden fouten in de log geschreven (meestal in je systeemlog: /var/log/syslog). Als je foutmeldingen krijgt als "ALERT-SIMULATION - configured POST variable limit exceeded" dan is dat een melding van Suhosin.

Deze configuratie zou met LimeSurvey moeten werken:

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

Met deze parameters kun je de suhosin.simulation weer op "off" zetten (dan is de server weer beschermd en werkt LimeSurvey nog steeds).

De standaardwaarden van Suhosin werken niet goed voor LimeSurvey. Als je echt je server streng wilt beschermen dan kun je de simulation mode gebruiken om de instellingen uit te proberen en de ideale waarde tussen 1000 en 5000 voor het aantal variabelen (vars) en tussen 1000000 en 5000000 voor de lengte van de waarden (value_lengths) te vinden.

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.

I can't change the language!

No matter what language you choose, the interface (admin und user) always is in 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 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. oracle package needs oracle dll's)
  • Install only the extensions that 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 were easy to forget:

  • .php needs to be associated to php5isapi.dll filter (It did this for me automagically)
  • limesurvey/tmp directory needs writer 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 receive error message at different part of LimeSurvey usage. Normally missing files throw errors like

"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"

Oplossing

1. Delete all uploaded files.

2. Re-upload the files.

(3. If necessary: Re-install by browsing to /limesurveyfolder/admin/install)

After submitting a page you end up at the general index page

There was an additional PHP setting introduced recently: 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 set this in your PHP configration (php.ini).