Troubleshooting/nl: Difference between revisions
From LimeSurvey Manual
No edit summary |
No edit summary |
||
(14 intermediate revisions by 3 users not shown) | |||
Line 62: | Line 62: | ||
Zoek het bestand locales.conf van FreeTDS op en wijzig het. Als je geen andere applicaties hebt die FreeTDS gebruiken, vervang dan de inhoud door | Zoek het bestand locales.conf van FreeTDS op en wijzig het. Als je geen andere applicaties hebt die FreeTDS gebruiken, vervang dan de inhoud door | ||
<syntaxhighlight lang="ini | <syntaxhighlight lang="ini"> | ||
[default] | [default] | ||
date format = %Y-%m-%d %H:%M:%S.%z | date format = %Y-%m-%d %H:%M:%S.%z | ||
Line 90: | Line 90: | ||
Je kunt bijvoorbeeld de melding krijgen: | Je kunt bijvoorbeeld de melding krijgen: | ||
<syntaxhighlight lang="php | <syntaxhighlight lang="php">ERROR | ||
We are sorry but your session has expired. | We are sorry but your session has expired. | ||
Line 111: | Line 111: | ||
Probeer de volgende configuratie: | Probeer de volgende configuratie: | ||
<syntaxhighlight lang="php | <syntaxhighlight lang="php"> | ||
suhosin.memory_limit = 128 | suhosin.memory_limit = 128 | ||
suhosin.post.max_value_length = 5000000 | suhosin.post.max_value_length = 5000000 | ||
Line 200: | Line 200: | ||
* Controleer ook je PHP-instellingen als je host gebruik maakt van de '''Suhosin extensie voor Apache''' deze kan wat te streng zijn ingesteld. | * Controleer ook je PHP-instellingen als je host gebruik maakt van de '''Suhosin extensie voor Apache''' deze kan wat te streng zijn ingesteld. | ||
* Bijvoorbeeld de twee instellingen "suhosin.post.max_vars" en "suhosin.request.max_vars" staan standaard op de waarde 200. Wijzig dit voor beide in minimaal 400. Hierdoor zijn langere enquêtes mogelijk. | |||
* Als je nog steeds problemen hebt, kun je proberen de module op simulation_mode te zetten (eigenlijk zet je het dan uit), omdat het maximum aantal afhankelijk is van je eigen enquête. | |||
Als je nog steeds problemen hebt, kun je proberen de module op simulation_mode te zetten (eigenlijk zet je het dan uit), omdat het maximum aantal afhankelijk is van je eigen enquête. | |||
* Het kan ook zijn dat de proxy of vergelijkbare software niet toestaat dat er omvangrijke "post requests" worden gedaan of dat er in de achtergrond meerdere malen dezelfde pagina wordt gebruikt (dat betekent dat er een CSRF-key wordt aangemaakt). Probeer dan een andere internetverbinding te gebruiken. | |||
Het kan ook zijn dat de proxy of vergelijkbare software niet toestaat dat er omvangrijke "post requests" worden gedaan of dat er in de achtergrond meerdere malen dezelfde pagina wordt gebruikt (dat betekent dat er een CSRF-key wordt aangemaakt). Probeer dan een andere internetverbinding te gebruiken. | |||
==Er worden geen vragen getoond bij gebruik van MSSQL Server met FreeTDS op Linux== | ==Er worden geen vragen getoond bij gebruik van MSSQL Server met FreeTDS op Linux== | ||
Als je zorgvuldig een vragengroep selecteert dan is er een spatie in de relevantie van de groep waardoor de hele groep niet relevant is. Het probleem is dat je FreeTDS spaties teruggeeft voor lege velden door een fout in de configuratie. Je kunt dit oplossen door minimaal FreeTDS protocol versie 8.0 te gebruiken. Dus wijzig het bestand freetds.conf (de map is iets als: /etc/freetds/freetds.conf) en wijzig de betreffende regel naar | Als je zorgvuldig een vragengroep selecteert dan is er een spatie in de relevantie van de groep waardoor de hele groep niet relevant is. Het probleem is dat je FreeTDS spaties teruggeeft voor lege velden door een fout in de configuratie. Je kunt dit oplossen door minimaal FreeTDS protocol versie 8.0 te gebruiken. Dus wijzig het bestand freetds.conf (de map is iets als: /etc/freetds/freetds.conf) en wijzig de betreffende regel naar | ||
tds versie = 8.0 | tds versie = 8.0 | ||
Dat moet het probleem verhelpen. | Dat moet het probleem verhelpen. | ||
=Na het invullen van de enquête= | =Na het invullen van de enquête= | ||
==Door deelnemers ingevulde teksten worden in het resultaat als vraagtekens getoond== | ==Door deelnemers ingevulde teksten worden in het resultaat als vraagtekens getoond== | ||
Dit gebeurt als je database niet standaard een UTF-8 karakterset gebruikt. Je kunt dit probleem oplossen door het volgende SQL commando uit te voeren (met bijvoorbeeld phpMyAdmin) | Dit gebeurt als je database niet standaard een UTF-8 karakterset gebruikt. Je kunt dit probleem oplossen door het volgende SQL commando uit te voeren (met bijvoorbeeld phpMyAdmin): | ||
ALTER DATABASE `<je_database_naam>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; | ALTER DATABASE `<je_database_naam>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; | ||
Vervang <je_database_naam> door de naam van je database. Deactiveer daarna je enquête en activeer de enquête opnieuw. | Vervang <je_database_naam> door de naam van je database. Deactiveer daarna je enquête en activeer de enquête opnieuw. | ||
=Databasespecifieke problemen= | |||
== Een specifiek Postgres-schema gebruiken == | |||
Set in config.php | |||
'initSQLs' => array('SET search_path TO "LimeSurvey";'), | |||
In config-defaults staat een voorbeeld. |
Latest revision as of 20:41, 9 March 2022
![](/images/a/aa/Help.png)
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
of
Bij elke URL komt je uit op de enquête-lijstpagina
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',
Probeer daarna het paneel beheer te openen met de URL:
http://<yourserver.net>/<limesurvey_dir>/admin
Na inloggen als beheerder
Bij elke actie krijg je het inlogscherm
Hierbij zijn de meest voorkomende oorzaken:
- PHP sessie problemen
- UTF8 encoding problemen
- IE problemen
PHP Sessie :
- Wijzig upload_tmp_dir en session.save_path in php.ini
- Maak de configureerde session en upload mappen aan
- IIS: Rechten toegekend om IIS guest user account aan te maken en te wijzigen
- Apache: Controleer of je webserver schrijfrechten heeft in de configureerde map
- Controleer of de variabele "session.use_cookies" in php.ini op 1 staat.
- Controleer de variabele "session.auto_start" in php.ini. Als de waarde 1 is, wijzig dit dan in 0.
Problemen met Internet Explorer LimeSurvey ondersteunt niet langer Internet Explorer voor de beheerinterface.
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.
Verzenden van een pagina met veel invoervelden werkt niet goed
In PHP 5.3.9 (toen ook toegevoegd aan eerdere versies) is een instelling toegevoegd: max_input_vars. Deze instelling beperkt het aantal variabelen dat kan worden verzonden (POST) naar de server. Het standaard aantal van 1000 kan worden overschreden als je veel vragen/antwoorden hebt op een pagina. Je kunt dit aanpassen in het bestand php.ini.
Datum worden niet goed weergegeven bij gebruik van MSSQL Server met FreeTDS op Linux
Zoek het bestand locales.conf van FreeTDS op en wijzig het. Als je geen andere applicaties hebt die FreeTDS gebruiken, vervang dan de inhoud door
[default]
date format = %Y-%m-%d %H:%M:%S.%z
Als je wel andere applicaties hebt die FreeTDS gebruiken, bepaal dan eerst welke "locale" je moet wijzigen.
Sla het bestand op en herstart de server. De datums zouden nu goed moeten worden getoond, anders heb je mogelijk het verkeerde bestand gewijzigd.
Een speciaal teken (Chinees, Cyrillisch, Grieks, Arabisch) wordt bij het invoeren als een vraagteken getoond
Waarschijnlijk is de database niet met een UTF-8 charset aangemaakt. Je kunt dit aanpassen door het volgende SQL commando op je database uit te voeren (bijv. in phpMyAdmin): ALTER DATABASE `<database_naam>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Vervang <database_naam> met de naam van de database.
Moeilijkheden met PageSpeed in LimeSurvey
Voeg in je virtualhost van LimeSurvey toe: ModPagespeed off
Anders krijg je problemen bij het gebruiken van ComfortUpdate en het exporteren van gegevens. Er kunnen ook andere fouten optreden.
Tijdens invullen van een enquête
Foutmelding "Session has expired"
Je kunt bijvoorbeeld de melding 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.
![](/images/a/aa/Help.png)
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 de Apache / Nginx-server opnieuw op te starten met de parameters waarmee rekening moet worden gehouden (service apache2 restart of service nginx restart).
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. Probeer de volgende configuratie:
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.
Wijzigen taal mislukt
Als de taal altijd Engels is, wat je ook kiest, dan wordt dat meestal veroorzaakt door een bug in je PHP-versie. Je kunt dit alleen oplossen door je PHP-versie te upgraden.
Voorkomende fouten bij gebruik IIS
Index.php kan niet geopend worden
Mogelijke oorzaak: er ontbreek een noodzakelijke extensie in de installatie
- Nodig zijn Multi-byte string, en MSSQL (of MySQL) extensies
Mogelijke oorzaak: ISAPI filter niet geconfigureerd
- In IIS, voor de website (je kunt dit doen op het niveau van de map) je moet instellen dat php5isapi.dll gebruikt wordt.
Index.php kan niet geopend worden en "php.exe -i" geeft foutmeldingen over ontbrekende dll's
Dit kan betekenen dat je teveel extensies geïnstalleerd hebt
- Als je alle PHP-extensies gebruikt, zal PHP stuk lopen omdat niet aan alle afhankelijkheden voldaan kan worden (bijv. oracle package heeft oracle dll's nodig)
- Installeer alleen de extensies die je nodig hebt.
- Om te testen, voer op de commandoregel uit: php.exe -i
Bericht dat de database ontbreekt
Dit kan gebeuren als je een verkeerde URL gebruikt
- Ga naar limesurvey/admin/install/index.php in plaats van limesurvey/index.php !
Bovengenoemde oplossingen werken niet
Dit kan gebeuren als je IIS niet opnieuw gestart hebt.
Wat je gemakkelijk vergeet:
- .php moet gekoppeld worden aan het filter php5isapi.dll
- de map limesurvey/tmp moet schrijfrechten hebben voor uploads van enquêtes
- wijzigen doc_root in php.ini en $rootdir in config.php
Ontbrekende bestanden ("No such file or directory")
Tijdens het uploaden van LimeSurvey naar je server kan het gebeuren dat de verbinding onderbroken wordt zodat sommige bestanden niet of maar gedeeltelijk zijn overgezet. Afhankelijk van het bestand kun je verschillende foutmeldingen van verschillende onderdelen van LimeSurvey krijgen. Meestal is de melding iets als:
"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" OF
"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. Verwijder alle geüploade bestanden.
2. Upload de bestanden opnieuw.
(3. Indien nodig: Herinstalleer door te gaan naar /limesurveyfolder/admin/install)
Na een pagina verstuurd te hebben, wordt de index of een 404-pagina getoond of je krijgt de melding 'The CSRF token could not be verified'
of
Niet alle invoer wordt opgeslagen als ik veel antwoorden / subvragen wil opslaan
of
Bij het opslaan blijf ik op dezelfde pagina staan
of
Bij het gebruik van de snelle vertaling worden de antwoorden of subvragen niet opgeslagen
of
Bij het exporteren van veel responsvelden wordt niet alles geëxporteerd
- Waarschijnlijk komt dit door een limitering in de webbrowser: max_input_vars. Deze instelling max_input_vars beperkt het aantal variabelen dat kan worden verzonden (POST) naar de server.
Het standaardaantal van 1000 kan worden overschreden als je veel vragen/antwoorden hebt op een pagina. Je kunt dit aanpassen in je PHP-bestand (php.ini).
- Controleer ook je PHP-instellingen als je host gebruik maakt van de Suhosin extensie voor Apache deze kan wat te streng zijn ingesteld.
- Bijvoorbeeld de twee instellingen "suhosin.post.max_vars" en "suhosin.request.max_vars" staan standaard op de waarde 200. Wijzig dit voor beide in minimaal 400. Hierdoor zijn langere enquêtes mogelijk.
- Als je nog steeds problemen hebt, kun je proberen de module op simulation_mode te zetten (eigenlijk zet je het dan uit), omdat het maximum aantal afhankelijk is van je eigen enquête.
- Het kan ook zijn dat de proxy of vergelijkbare software niet toestaat dat er omvangrijke "post requests" worden gedaan of dat er in de achtergrond meerdere malen dezelfde pagina wordt gebruikt (dat betekent dat er een CSRF-key wordt aangemaakt). Probeer dan een andere internetverbinding te gebruiken.
Er worden geen vragen getoond bij gebruik van MSSQL Server met FreeTDS op Linux
Als je zorgvuldig een vragengroep selecteert dan is er een spatie in de relevantie van de groep waardoor de hele groep niet relevant is. Het probleem is dat je FreeTDS spaties teruggeeft voor lege velden door een fout in de configuratie. Je kunt dit oplossen door minimaal FreeTDS protocol versie 8.0 te gebruiken. Dus wijzig het bestand freetds.conf (de map is iets als: /etc/freetds/freetds.conf) en wijzig de betreffende regel naar
tds versie = 8.0
Dat moet het probleem verhelpen.
Na het invullen van de enquête
Door deelnemers ingevulde teksten worden in het resultaat als vraagtekens getoond
Dit gebeurt als je database niet standaard een UTF-8 karakterset gebruikt. Je kunt dit probleem oplossen door het volgende SQL commando uit te voeren (met bijvoorbeeld phpMyAdmin):
ALTER DATABASE `<je_database_naam>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Vervang <je_database_naam> door de naam van je database. Deactiveer daarna je enquête en activeer de enquête opnieuw.
Databasespecifieke problemen
Een specifiek Postgres-schema gebruiken
Set in config.php 'initSQLs' => array('SET search_path TO "LimeSurvey";'), In config-defaults staat een voorbeeld.