如何部署在线调查系统LimeSurvey?

Linux基础

1 基础知识

1.1 什么是LimeSurvey

– 一款专业的在线调查系统
– 全球领先的开源调查软件
– 100%开源且坚持透明开发

1.2 LimeSurvey的特点

– 支持创建简单的调查问卷
– 支持条件和配额管理的高级评估
– 支持80多种语言
– 无限的管理员(授予同事或朋友权限)

1.3 部署要求

– 支持250MB以上的磁盘空间
– 支持MySQL 5.5.3及以上版本或Microsoft SQL Server 2005及以上版本或Postgres 9及以上版本)
– 支持PHP 5.5.9及以上版本(建议使用PHP 7.0.0+)
PHP 7.0.0+建议使用如下模块,
– mbstring
– pdo_mysql和pdo_mysqli(针对MySQL数据库)
– pdo_pgsql(针对Postgres数据库)
– pdo_sqlsrv(针对Windows下的MSSQL)
– pdo_dblib(针对Linux下的MSSQL)
– hash
– session
– openssl
– mcrypt
– etc …
可选的PHP模块,
– FreeType支持GD-Library(用于验证码、统计信息中的漂亮图表、HTML编码上传图像)扩展文档请参阅
– IMAP(用于电子邮件退回跟踪系统)扩展文档请参阅
– Zip(用于zip归档资源导入和excel导出为zip)扩展文档请参阅
– Zlib(ComfortUpdate的需求)扩展文档请参阅

2 最佳实践

2.1 环境部署

2.1.1 系统信息

IP Addresses = 10.168.0.114
Host Name = limesurver.cmdschool.org
OS = CentOS 7.x x86_64

2.1.2 软件环境配置

请按如下教程部署LAMP环境,
https://www.cmdschool.org/archives/3208
https://www.cmdschool.org/archives/2364

2.2 部署LimeSurvey

2.2.1 下载软件包

cd ~
wget https://download.limesurvey.org/latest-stable-release/limesurvey3.17.1+190408.tar.bz2

注:其他的版本,请从如下链接下载,
https://community.limesurvey.org/downloads/

2.2.2 解压软件包

cd ~
tar -xf limesurvey3.17.1+190408.tar.bz2

2.2.3 部署软件包

mv limesurvey /var/www/
chown apache:apache -R /var/www/limesurvey/
chmod 775 -R /var/www/limesurvey/

2.2.4 创建虚拟服务器

vim /etc/httpd/conf.d/limesurvey.conf

加入如下配置,

<VirtualHost *:80>
DocumentRoot /var/www/limesurvey
ServerName limesurvey.cmdschool.org
</VirtualHost>

<Directory /var/www/limesurvey>
Require all granted
</Directory>

配置保存后,建议你使用如下命令检查配置的语法,

httpd -t

检查完毕后,你需要重启服务使配置生效,

systemctl restart httpd.service

2.2.5 配置名称解析

notepad \Windows\System32\drivers\etc\hosts

加入如下配置,

10.168.0.114 limesurvey.cmdschool.org

注:以上只能用于测试,生产环境中请配置DNS代替

2.3 配置LimeSurvey

2.3.1 运行安装向导

请通过如下链接访问,
http://limesurvey.cmdschool.org
可见如下界面,

如上图所示:
单击【Start installation】

2.3.2 确认授权协议


如上图所示:
单击【I accept】

2.3.3 根据向导安装模块


如上图所示,我们需要根据向导安装缺失的模块

2.3.3.1 模块编译前的准备

首先,我们根据如下教程准备模块的安装环境和熟悉模块的安装方法,
https://www.cmdschool.org/archives/3166

2.3.3.2 编译安装模块mbstring

cd ~/php-7.2.11/ext/mbstring/
phpize
./configure
make
make install

2.3.3.3 编译安装模块zlib

cd ~/php-7.2.11/ext/zlib/
cp config0.m4 config.m4
phpize
./configure
make
make install

2.3.3.4 编译安装模块gd

cd ~/php-7.2.11/ext/gd/
phpize
./configure
make
make install

另外,如果收到如下错误提示,

configure: error: png.h not found.

你需要安装如下开发库后再继续编译安装,

yum install -y libpng-devel

2.3.3.5 编译安装模块ldap

cd ~/php-7.2.11/ext/ldap/
phpize
./configure
make
make install

另外,如果收到如下错误提示,

configure: error: Cannot find ldap.h

你需要安装如下开发库后再继续编译安装,

yum install -y openldap-devel

另外,如果收到如下错误提示,

configure: error: Cannot find ldap libraries in /usr/lib.

你需要创建如下软连接,

ln -s /usr/lib64/libldap.so /usr/lib/

2.3.3.6 编译安装模块zip

cd ~/php-7.2.11/ext/zip/
phpize
./configure
make
make install

2.3.3.7 编译安装模块imap

cd ~/php-7.2.11/ext/imap/
phpize
./configure
make
make install

以上方法只作参考,如果收到如下错误提示,

configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.

你需要根据以下方法编译安装C-Client的库和IMAP,
https://www.cmdschool.org/archives/3971

2.3.3.8 修改模块加载配置

vim /etc/php.ini

加入如下配置,

extension=mbstring.so
extension=zlib.so
extension=gd.so
extension=ldap.so
extension=zip.so
extension=imap.so

2.3.3.9 重载服务使配置生效

systemctl reload httpd

2.3.4 确认模块就绪


如上图所示,
通过刷新页面确认模块就绪,单击【Next】即可

2.3.5 配置数据库连接

2.3.5.1 创建数据库

echo 'create database limesurvey character set utf8;' | mysql -uroot -p
echo 'grant all privileges on limesurvey.* to "limesurvey"@"localhost" identified by "limesurveypwd";' | mysql -u root -p

注:以上创建用户名为“limesurvey”,密码为“limesurveypwd”,允许从本机连接。

2.3.5.2 连接数据库


如上图所示,
填写好数据库的连接参数,单击【Next】即可

2.3.5.3 配置据库


如上图所示,
单击【Populate database】即可

2.3.6 设置Admin


如上图所示,
修改Admin的密码并单击【Next】即可见如下确认界面,

如上图所示,
单击【Administrator】即进入管理登录界面,

注:
– 后面的使用请自行摸索或参考官方文档,本章则不再详述。
– 登录入口,请使用链接,http://limesurvey.cmdschool.org/index.php/admin

参阅文档
=========

安装方法
———-
https://manual.limesurvey.org/Installation_-_LimeSurvey_CE

下载链接
———–
https://github.com/LimeSurvey/LimeSurvey/releases
https://www.limesurvey.org/about-limesurvey/download

官方github
————–
https://github.com/LimeSurvey/LimeSurvey

没有评论

发表回复

Linux基础
如何配置RHEL 8.x OpenSSH客户端登录自动过期?

1 前言 一个问题,一篇文章,一出故事。 基于服务器安全,笔者需要让OpenSSH客户端在10分钟内 …

Linux基础
如何安装部署SentinelOne EDR?

1 基础知识 1.1 软件公司介绍 SentinelOne,Inc.是一家在纽约证券交易所上市的美国 …

Linux基础
如何配置Ext4的磁盘配额?

1 基础知识 1.1 Disk Quota的概念 Disk Quota用于合理分配有限的磁盘使用空间 …