x

Основні розділи

  1. LimeSurvey Cloud проти LimeSurvey CE
  2. Короткий посібник із початку роботи - LimeSurvey 3.0+
  3. Встановлення - LimeSurvey CE
  4. Як створити хороше опитування (посібник)
  5. Початок роботи
  6. Адміністрування LimeSurvey
  7. Опитування - вступ
  8. Налаштування опитування
  9. Меню опитування
  10. Структура опитування
  11. Питання - вступ
  12. Групи питань - вступ
  13. Опитування - керування
  14. Параметри панелі інструментів опитування
  15. Багатомовне опитування
  16. ExpressionScript Engine - Короткий посібник
  17. Некатегоризовані та розширені функції
  18. Загальні поширені запитання
  19. Усунення несправностей
  20. Обхідні рішення
  21. Ліцензія
  22. Журнал змін версій
  23. Плагіни
 Actions

Усунення несправностей

From LimeSurvey Manual

Ця сторінка, можливо, перекладена машинним способом і може містити помилки. Показати англійський оригінал · Покращити цей переклад
This page is a translated version of the page Troubleshooting and the translation is 100% complete.



Наступний розділ вікі створено завдяки спільній роботі багатьох учасників спільноти LimeSurvey. Щоб отримати актуальнішу інформацію, перегляньте форум LimeSurvey. Для професійної підтримки зверніться до одного з наших авторизованих партнерів LimeSurvey: https://limesurvey.com.


Загальна інформація

Ця сторінка містить перелік типових технічних проблем та способів їх вирішення після успішного встановлення. Якщо вам потрібно усунути проблеми, що виникають під час встановлення, зверніться до поширених запитань щодо встановлення.

Під час спроби відкрити сторінку входу в адміністративну частину

Повідомлення про помилку: "No input file specified" після встановлення

або

Будь-яка URL-адреса веде на сторінку Список опитувань

Під час встановлення LimeSurvey намагається визначити найкращий формат URL-адрес. Іноді це працює неправильно.

Вам потрібно примусово налаштувати LimeSurvey на використання іншої системи керування URL-адресами, відредагувавши файл конфігурації.

У файлі /application/config/config.php замініть

     'urlFormat' => 'path',			

на це:

     'urlFormat' => 'get',

Потім спробуйте відкрити панель адміністратора за допомогою короткої адміністративної URL-адреси:

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

Після входу в адміністративну частину

Будь-яка дія на адміністративній сторінці повертає вас до екрана входу

Це може статися з таких основних причин:

  • проблеми із сесіями PHP
  • проблеми з кодуванням UTF8
  • проблеми з IE

Сесії PHP:

  1. Оновіть upload_tmp_dir та session.save_path у php.ini
  2. Створіть налаштовані каталоги для сесій та завантажень
  3. IIS: надайте дозвіл на створення та зміну гостьовому обліковому запису користувача IIS
  4. Apache: переконайтеся, що веб-сервер має дозвіл на запис у налаштований каталог
  5. Перевірте, чи змінну "session.use_cookies" у php.ini встановлено на 1.
  6. Перевірте змінну "session.auto_start" у php.ini. Якщо її встановлено на 1, змініть на 0.

Проблеми з Internet Explorer LimeSurvey більше не підтримує доступ до адміністративного інтерфейсу через Internet Explorer.

Кодування UTF8:

Якщо ви редагуєте будь-який файл (найімовірніше, config.php), не зберігайте його в UTF8 для підтримки спеціальних символів мови! Завжди зберігайте файли .php у справжньому форматі ANSI/ISO.

Не вдається надіслати сторінку, що містить велику кількість питань/варіантів відповідей/підпитань

У PHP 5.3.9 (і навіть у деяких ранніх версіях PHP завдяки портуванню) з’явилося нове налаштування: max_input_vars. Воно обмежує максимальну кількість змінних, які можна надіслати (POST) на сервер. За замовчуванням встановлено 1000, але якщо у вас є питання з великою кількістю варіантів відповідей або сторінка опитування з дуже великою кількістю питань/відповідей, цей ліміт може бути перевищено. Вам потрібно змінити це налаштування у файлі конфігурації PHP (php.ini).

Дати відображаються неправильно під час використання MSSQL Server з FreeTDS на Linux

Знайдіть файл locales.conf FreeTDS і відредагуйте його. Якщо інші програми не використовують FreeTDS, просто замініть вміст на

[default]
    date format = %Y-%m-%d %H:%M:%S.%z

Якщо FreeTDS використовують інші програми, спершу перевірте, яку локаль потрібно редагувати.

Збережіть файл і перезапустіть сервер. Тепер дати мають відображатися правильно. Якщо це не допомогло, можливо, ви відредагували не той файл — повторіть спробу.

Коли я вводжу спеціальні символи (китайські, кириличні, грецькі, арабські) в опитування чи адміністративну частину, кожен символ відображається як знак питання?

Це відбувається, якщо саму базу даних створено без кодування UTF-8. Таке може статися, коли базу даних потрібно створювати через панель адміністратора провайдера. Ви можете виправити цю проблему, виконавши наступну команду SQL у вашій базі даних (наприклад, за допомогою phpMyAdmin) ALTER DATABASE `<your_database_name>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Замініть <your_database_name> на назву вашої бази даних. Це потрібно зробити до встановлення LimeSurvey.

PageSpeed створює проблеми для LimeSurvey

Вам слід додати ModPagespeed off до віртуального хоста LimeSurvey.

Інакше ви не зможете скористатися ComfortUpdate та експортувати дані. Імовірно, щось інше також не працюватиме.

Під час проходження опитування

Помилка "Session has expired"

Колись ви можете побачити повідомлення на кшталт:

ERROR

Вибачте, але Ваша сесія закінчилася.

Або Ви були неактивні надто довго, або у Вашому браузері вимкнено файли cookie, або виникли проблеми із з’єднанням.

Якщо на Вашому сервері активовано Suhosin, це може бути причиною появи цього повідомлення посеред проходження опитування.

Якщо Ваше опитування не активне, поведінка може бути іншою, і посеред проходження опитування Вас може бути перенаправлено на публічний список опитувань. Рішення те саме.

Suhosin — це розширена система захисту для встановлень PHP, але конфігурація Suhosin за замовчуванням може створювати проблеми для LimeSurvey.

Спочатку перевірте та протестуйте за допомогою журналу Suhosin, встановивши suhosin.log.sapi = 511 і suhosin.simulation = on згідно з документацією Suhosin.

Файл конфігурації зазвичай розташований у /etc/php5/apache2/conf.d/suhosin.ini, але щоб бути певними, Ви можете перевірити свій phpinfo (адміністрування LimeSurvey > Загальні налаштування > кнопка Показати PHPInfo > рядок: "Additional .ini files parsed"), щоб дізнатися правильний шлях.

Не забудьте перезапустити сервер Apache/Nginx, щоб параметри набули чинності (service apache2 restart або service nginx restart).

Коли режим симуляції ввімкнено, Suhosin нічого не блокує, а помилки записуються в журнали (зазвичай у системний журнал: /var/log/syslog). Якщо Ви отримуєте повідомлення про помилку, наприклад "ALERT-SIMULATION - configured POST variable limit exceeded", це попередження від Suhosin. Спробуйте таку конфігурацію (яка, схоже, добре працює з 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

З цими параметрами Ви зможете повернути suhosin.simulation у значення "off" (щоб сервер був захищений, а LimeSurvey продовжував працювати).

Значення Suhosin за замовчуванням погано працюють з LimeSurvey. Якщо Ви справді хочете надійно захистити свій сервер, можете скористатися режимом симуляції, щоб налаштувати параметри та підібрати оптимальні значення: від 1000 до 5000 для vars і від 1000000 до 5000000 для value_lengths.

Примітка: Нещодавно було додано ще один параметр PHP, який також потрібно змінити: max_input_vars — він аналогічний suhosin.post.max_vars, але його потрібно задавати окремо в php.ini.

Я не можу змінити мову!

Незалежно від того, яку мову Ви оберете, інтерфейс (адміністратора та користувача) завжди відображається англійською мовою. Зазвичай це спричинено помилкою у Вашій версії PHP. Іншого способу виправити це, окрім оновлення версії PHP, немає.

Деякі поширені помилки (для IIS)

Index.php не відкривається

Можлива причина: це може статися, якщо Ви не встановили необхідні розширення

  • Вам потрібно встановити розширення Multi-byte string та MSSQL (або MySQL)


Можлива причина: не налаштовано фільтр ISAPI

  • В IIS для веб-сайту (це можна зробити на рівні каталогу) потрібно налаштувати використання php5isapi.dll


Index.php не відкривається, а "php.exe -i" видає повідомлення про помилки щодо відсутніх .dll

Це може статися, якщо Ви встановили забагато розширень

  • Якщо Ви встановите всі розширення PHP, PHP не працюватиме, оскільки не всі залежності будуть задоволені (наприклад, пакету oracle потрібні oracle dll)
  • Встановлюйте лише ті розширення, які Вам потрібні
  • Для перевірки спробуйте запустити php.exe -i з командного рядка

Повідомлення про відсутність бази даних

Це може статися, якщо Ви перейшли за неправильною URL-адресою:

  • Переконайтеся, що Ви переходите на limesurvey/admin/install/index.php, а не на limesurvey/index.php!

Наведені вище виправлення не вирішують проблему

Це може статися, якщо Ви не перезапустили IIS

  • Перезапустіть IIS

Про що легко забути:

  • .php потрібно пов’язати з фільтром php5isapi.dll
  • каталог limesurvey/tmp потребує дозволу на запис для завантаження файлів в опитуваннях
  • оновлення doc_root у php.ini та $rootdir у config.php

Відсутні файли ("No such file or directory")

Під час завантаження LimeSurvey на Ваш сервер з’єднання може перерватися, внаслідок чого деякі файли не будуть передані або будуть передані не повністю. Залежно від файлів Ви можете отримувати різні повідомлення про помилки щоразу, коли звертаєтеся до різних функцій/частин LimeSurvey. Помилки через відсутні файли виглядають так:

"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" АБО

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

Рішення

1. Видаліть усі завантажені файли.

2. Завантажте файли повторно.

(3. За потреби: перевстановіть LimeSurvey, відкривши /limesurveyfolder/admin/install)

Після надсилання сторінки ви потрапляєте на загальну головну сторінку/на сторінку 404 або отримуєте повідомлення «The CSRF token could not be verified»

або

Після натискання «Далі» на сторінці з великою кількістю відповідей/підпитань не всі відповіді зберігаються

або

Після натискання «Далі» я потрапляю на ту саму сторінку

або

Швидкий переклад не зберігає відповіді або підпитання

або

Під час експорту великої кількості полів відповідей експортуються не всі з них

  • Найімовірніше, причина в обмежувальному налаштуванні вашого вебсервера: max_input_vars. Це налаштування обмежує максимальну кількість змінних, які можна надіслати (POST) на сервер.

За замовчуванням встановлено 1000, але якщо у вас є питання з великою кількістю варіантів відповідей або сторінка опитування з дуже великою кількістю питань/відповідей, цей ліміт може бути перевищено. Вам потрібно відредагувати конфігурацію PHP (php.ini).

  • Також перевірте налаштування PHP, якщо ваш хостинг використовує розширення Suhosin для Apache, яке може мати надто обмежувальні значення для кількох налаштувань.
  • Наприклад, для двох налаштувань «suhosin.post.max_vars» і «suhosin.request.max_vars» за замовчуванням встановлено значення 200. Збільште обидва значення до 400 або більше, щоб користувачі могли заповнювати та надсилати довгі опитування.
  • Якщо проблеми залишаються, спробуйте перемкнути модуль у simulation_mode (тобто фактично деактивувати його), оскільки максимальне значення завжди залежить від конкретного опитування.
  • Інша причина може полягати в проксі або подібному програмному забезпеченні, яке не дозволяє великі POST-запити або повторні запити тієї самої сторінки у фоновому режимі (що призводить до створення нового CSRF-ключа). У такому разі спробуйте інше інтернет-з’єднання.

Питання не відображаються під час використання MSSQL Server із FreeTDS на Linux

Якщо уважно перевірити будь-яку групу питань, то в полі «Релевантність групи» можна побачити пробіл, через який уся група стає нерелевантною. Проблема полягає в тому, що через неправильну конфігурацію FreeTDS повертає пробіли для порожніх полів. Ви можете вирішити цю проблему, встановивши версію протоколу FreeTDS щонайменше 8.0. Тож відредагуйте freetds.conf (наприклад, /etc/freetds/freetds.conf) і змініть відповідний рядок на

    tds version = 8.0

Це має вирішити проблему.

Після проходження опитування

Тексти, введені учасником, відображаються в результатах як знаки питання

Це трапляється, якщо ваша база даних за замовчуванням не використовує кодування UTF-8. Таке може статися, коли базу даних потрібно створювати через панель адміністрування провайдера. Ви можете вирішити цю проблему, виконавши наведену нижче SQL-команду для вашої бази даних (наприклад, за допомогою phpMyAdmin):

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

Замініть <your_database_name> на назву вашої бази даних. Після цього деактивуйте опитування та активуйте його знову.

Проблеми, пов’язані з конкретними базами даних

Я хочу, щоб LimeSurvey використовував певну схему Postgres

Встановіть у config.php 'initSQLs' => array('SET search_path TO "LimeSurvey";'), Приклад дивіться в config-defaults.