Installation FAQ/ru: Difference between revisions
From LimeSurvey Manual
Created page with "===Исправление===" |
Created page with "Это может случаться при активированном параметре mbstring.func_overload. Проверьте Ваш php.ini и исправьте" |
||
Line 100: | Line 100: | ||
===Исправление=== | ===Исправление=== | ||
Это может случаться при активированном параметре mbstring.func_overload. Проверьте Ваш php.ini и исправьте | |||
mbstring.func_overload = 0 | mbstring.func_overload = 0 |
Revision as of 04:20, 17 May 2015
Содержание:
Во время установки
Как я могу создать базу данных и пользователя базы с помощью командной строки?
Вам необходимо ввести приведенные ниже команды в консоль MySQL.
create database <your_database_name>;
create user <your_database_username>;
create user <your_database_username>@localhost;
set password for <your_database_username> = PASSWORD('<your_database_password>');
set password for <your_database_username>@localhost = PASSWORD('<your_database_password>');
grant all on <your_database_name>.* to '<your_database_username>';
grant all on <your_database_name>.* to '<your_database_username>'@'localhost';
Вам необходимо подменить данные: <your_database_name>, <your_database_username> и <your_database_password> в приведенных командах на свои значения.
Что делать, если не получается создать базу данных с помощью скрипта?
Обычно, новую базу данных и структуру таблиц создает скрипт. Однако, если Ваш провайдер/сервер не дает Вам прав на создание базы данных в MySQL, то Ван нужно связаться с системным администратором для создания необходимой базы (или создать ее самостоятельно). Они должны создать пустую базу данных для Вас с соответствующими правами доступа (т.е.: чтение/запись/создание). Начните обычную установку LimeSurvey и система создаст таблицы в существующей базе.
Зачем нужна библиотека mbstring (Multibyte String Functions)?
Mbstring это PHP-библиотека, которая преобразовывает кодировки разных языков из одной в другую. Она понадобится, если Вы хотите развернуть у себя LimeSurvey. Чтобы проверить, установлена ли данная библиотека, перейдите по ссылке
http://<ваш_сервер>/<ваш_limesurvey_каталог>/admin/install/phpinfo.php
в браузере. Будет отображено великое множество информации. В секции Конфигурация найдите строку 'mbstring'.
Если такая строка найдена, то можете смело продолжать установку.
Если строка mbstring не найдена, то Вы можете получить кучу проблем.
Три возможных сценария развития событий:
- Если Вы пользуетесь услугой сервис-провайдера(система находится на внешнем хостинге): то поинтересуйтесь у него как можно активировать данную библиотеку в PHP или же пусть он сам ее активирует - если у Вас достаточно мощная панель управления хостингом, то Вы можете самостоятельно сделать это.
- Если система развернута на Вашем личном сервере Linux: Вы можете произвести повторную компиляцию PHP, включив в него библиотеку mbstring. Спросите у людей разбирающихся в Linux как сделать это. В большинстве версий Linux имеющихся на сегодня Вы можете установить все с помощью менеджера пакетов.
- Если Вы пользуетесь системой на базе пакетов поддерживающих 'yum' (CentOS, RedHat, Fedora):
- Используйте терминал (от root-а) и введите: yum install php-mbstring
- Убедитесь в том что обновился файл /etc/php.ini и в нем имеются строки с параметрами mbstring (без комментариев в начале строки).
- Убедитесь, что перезагрузили apache после установки: /etc/init.d/httpd restart
- Если же все развернуто на Вашем сервере Windows: Найдите php.ini в Вашей системе, откройте его любым редактором и найдите mbstring. Скорее всего большинство строк с данным словом будет закомментировано и Вам необходимо будет раскомментировать их. Удалите тточку с запятой, сохраните файл и перезагрузите web-сервер.
Что делать, если при вводе специальных символов (Китайские иероглифы, Кириллица, Греческий алфавит, Арабский алфавит) в мой опрос, вместо них я вижу знаки вопроса?
Так случается тогда, когда Ваша база данных создана без поддержки UTF-8 кодировки. Это могло произойти по причине создания базы данных с помощью панели управления хостингом. Вы можете исправить данную проблему выполнив SQL-команду в Вашей базе (воспользовавшись, например, phpMyAdmin)
ALTER DATABASE `<your_database_name>` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Замените <your_database_name> на имя Вашей базы данных. Вам необходимо сделать это перед установкой LimeSurvey.
При попытке открыть страницу установки вижу пустую страницу
Здесь проблема не совсем в LimeSurvey, а в настройках установленного PHP.
- Проверьте наличие установленного модуля PHP для поддержки работы с MySQL (php-mysql).
- Проверьте Ваш установленный PHP на загрузку php.ini-файла, который Вы изменили и не проверяет ли он какие либо другие php.ini-файлы в Вашей системе.
- Проверьте расположение и разрешения для Вашего файла php.ini
upload_tmp_dir="/temp"
session.save_path="/temp"
- Проверьте версию запущенного PHP (т.е. "пустая страница" может быть связана с PHP v4.4 и LimeSurvey v2.00+).
Сообщения об ошибках о несуществующих ресурсах
Иногда случается так, что файлы не выгружаются корректно или повреждаются во время данного процесса. Это может приводить к различного рода сообщениям об ошибках. Большинство из них относятся к функциям находящимся в файле, который не может быть найден.
Решение: Загрузите файлы заново используя FTP-клиент в бинарном режиме.
После создания базы данных
Пустая страница после создания базы данных
Симптомы
- LimeSurvey установлен, база создана, но при переходе на web-страницу получаем пустую страницу
- Лог Web-сервера содержит записи "Fatal error: Call to a member function on a non-object in /path/to/limesurvey/admin/login_check.php on line 69"
Исправление
Скорее всего это некорректные значение параметров $rooturl или $rootdir в файле config.php. Обычно config.ini пытается установить корректный $rootdir с помощью вызова dirname('''FILE''') и зачастую это работает, но бывают сбои, если LimeSurvey установлен в домашний каталог пользователя или смонтированную по NFS папку. Попробуйте задать данный параметр вручную. Путь Вам может указать команда pwd в командной строке, наподобие "/disks/hostname/home/username/public_html/limesurvey", попробуйте воспользоваться "/home/username/public_html/limesurvey".
При попытке перехода на страницу администратора браузер постоянно загружает ее и ничего не показывает
Симптомы
- LimeSurvey установлен, база данных создана, но при переходе на страницу администратора браузер постоянно загружает страницу и в итоге ничего не показывает
- Когда Вы проверяете access.log на Web-сервере, то его размер оказывается очень большим (в некоторых случаях более чем 2GiB).
- В файле access.log Вы видите одно и то же сообщение повторяющееся многократно
Warning: fread() [function.fread]: Length parameter must be greater than 0 in /limesurvey/classes/php-gettext/streams.php on line 120
Примечание: номер строки может отличаться в зависимости от версии LimeSurvey.
Исправление
Это может случаться при активированном параметре mbstring.func_overload. Проверьте Ваш php.ini и исправьте
mbstring.func_overload = 0
Note: This means no function overloading. See PHP manual for this setting: Function Overloading Feature
When accessing admin page, the browser reports Fatal error: Call to a member function gT() on a non-object in login_check.php on line 76
Symptoms
- LimeSurvey installed OK and database was created. But when rdirected to the admin page, the browser displayed the the listed error.
- $rootdir and $rooturl are correctly set in config.php.
- The disk path name for limesurvey installation directory includes one of the following characters: ()+
Note: Other characters may also induce the same behaviour
Fix
Move / rename the limesurvey installation directory so that pathname does not include either the ( or ) characters
After installation
For all issues happening after a successful installation please refer to the Troubleshooting page.