Installation
On this page:
- 1. Make sure you can use LimeSurvey on your website
- 2. Download the LimeSurvey package
- 3. Unpack the LimeSurvey package
- 4. Collect information about your server
- 5. Configure LimeSurvey
- 6. Upload the files to your web server
- 7. Set Directory permissions
- 8. Run the installation script
- 9. Connect to the administration script for the first time
- 10. What if I have problems...
- Video tutorials
1. Make sure you can use LimeSurvey on your website
Make sure your server meets the following additional requirements:Required:
- Minimum 60 MB disk space
- MySQL 4.1.0 or later OR Microsoft SQL Server 2000 or later OR Postgres 8.1 or later
- PHP 5.x or later with the following modules/libraries enabled:
- mbstring (Multibyte String Functions) extension library (see also Installation FAQ)
- mysql5 or gqsql PHP library (which is standard with hosting providers - if you have setup your own server make sure it is installed)
- If you use PHP < 5.1.2 you have to separately enable the XMLWriter package
.
Optional:
- iconv extension library installed (only for PHP 4 versions - needed for Excel export)
- GD-Library with FreeType support installed (for captchas or nice charts in statistics) see GD-Library PHP documentation
- LDAP-Library installed (to import tokens using LDAP) see PHP LDAP Documentation
- php_zip (pretty standard) for template upload and import resources Zip archives
- zlib (pretty standard) is needed for the ComfortUpdate - see PHP documentation
In most cases your webspace provider or system administrator will be able to help you out on these optional components.
If you want to try LimeSurvey on your local machine we recommend XAMPP
If you want to run Microsoft's IIS server take a look at "Installation of Limesurvey On a Windows XP machine" and "Installation on XP with IIS".
1.1 Hosting for LimeSurvey
LimeSurvey should work with most hosting companies which provide PHP and MYSQL. If you want a ready-installed version of LimeSurvey consider using LimeService2. Download the LimeSurvey package
Download3. Unpack the LimeSurvey package
Uncompress the zip file into a dedicated directory/folder using your preferred compression software. When you uncompress the file make sure that you uncompress the directory structure with the files (this is default behavior for most compression programs). The path name for the installation directory should not include ( or ) characters, but may include the space character4. Collect information about your server
You will need to know the following things to install LimeSurvey on your web server correctly:- Your intended website URL where your scripts will reside (e.g: http://my.domain.com/limesurvey)
- The physical disk location on your server where your scripts will reside (ie: /home/usr/htdocs/limesurvey)
- The IP/net location of your MySQL database server (ie: localhost)
- If your database server uses a non-standard port find out which port it is.
- Your username and password for your MySQL database server
- With most providers you can't let the script create the database but have to do it yourself. If you are using such a provider please create a database (for example limesurvey) yourself.
5. Configure LimeSurvey
Now open the file config.php in the /limesurvey/ root directory with your preferred text editor.5.1 Basic settings
Walk through config.php and check/configure the following settings:- $databasetype: This is the database type. At the moment you can set here "mysql" for the MySQL database server, "odbc_mssql" for Microsoft SQL server and "postgres" for Postgres SQL Server. At least those are the ones that have been tested.
- $databaselocation: Set this to the IP/net location of your database server. In most cases "localhost" will work.
- $databasename: The name of the database on your database server that you will be using for LimeSurvey. If you have high level permissions on the server, you can create a database from LimeSurvey. In this case, put whatever the database will be called into this setting. Alternatively you can use the name of a previously created database here. If you provide an existing database name make sure the database does not contain old tables of LimeSurvey.
Important: If you have Microsoft SQL server make sure your database is using a case-insensitive collation (should be set by default).- $databaseuser: Your DB server user name
- $databasepass: Your DB server password
- $dbprefix: You can leave this setting blank (ie: $dbprefix="";) if you are using a separate database for LimeSurvey alone. If you want to share a database between LimeSurvey and other database applications, add a prefix to this setting. The recommended prefix is "lime_", but really - this is up to you. Note: Creating a database and a username in MySQL with command line is described in Installation FAQ.
- $rooturl: This should be set to the URL location of your LimeSurvey scripts. If you copied the Limsurvey files into the folder limesurveyfolder you have to rename .../limesurvey to the folder name you have chosen (limesurveyfolder). The default setting will attempt to do the rest, so often you won't need to change anything here (the section {$_SERVER['SERVER_NAME']} tries to do this automatically. If it doesn't work, type the server url location in manually - for example "http://www.mydomain.com/limesurvey"). If you want LimeSurvey to use SSL change http to https (provided that you have SSL certificates correctly installed and configured on your server).
- $rootdir: Usually you don't need to change this. It should be set to the physical disk location of your scripts. The default setting will attempt to do this for you, so most probably you won't need to change anything here (the section "dirname(__FILE__);" tries to do this automatically). If it doesn't work, type the disk location in manually - for example /home/public_html/limesurvey.
- $defaultuser: When the script has access control turned on this is the default user that is created when LimeSurvey first sets up your security settings.
- $defaultpass: When the script has access control turned on this is the default password that is created when LimeSurvey first sets up your security settings.
Note: This setting is used only for the initial setup. When the $defaultuser is already created this option is not used any longer. You need to change your password in the User-Settings.
5.2 Optional settings
There are many more optional settings you can set in config.php. Please check out the page with the optional settings. However for a basic setup just continue with the next step.6. Upload the files to your web server
Using your FTP program, connect to your web server and create a directory to store your scripts. Then upload the files using the directory structure they are in. We recommend to upload the files in binary mode (settings of your FTP program). Please note that uploading in ASCII mode can lead to uncommon errors (e.g. 'class not found' error during installation). If you experience uncommon or not documented error, please try to re-upload files in binary mode. When uploading in ASCII mode sometimes the images are not uploaded correctly.7. Set Directory permissions
For the script to work properly it needs certain access to some directories - this applies especially to Linux/*nix systems.- The "/limesurvey/tmp" directory is used for imports & uploads and should be set to Read & Write for your webserver.
- You should also set Read & Write for your webserver for the "limesurvey/templates" directory and its sub-directories and files if you want to be able to edit and copy templates.
- The "/limesurvey/upload/" directory and all its subdirectories must also have Read & Write for your webserver in order to enable picture and media files upload.
- The other directories can be set to Read Only or in Linux/Unix. You may wish to set the permissions on each file within the /limesurvey/admin directory to Read Only.
Hint: If you are using Linux then depending on your webserver configuration you will have to chmod the rights on the writable folders to 755 or 777. Try 755 first - if it does not work 'upgrade' to 777.8. Run the installation script
Go to "http://your.domain.com/limesurvey/admin/install". If you configured everything correctly you will be asked to create the database and/or create the tables inside the database. Limesurvey then creates the needed tables in the database.After the script shows that it successfully created the tables, you will be prompted to rename or delete the /admin/install directory - so just do it
9. Connect to the administration script for the first time
You are done! Open your browser and enter the URL of your admin.php script. Assuming you used LimeSurvey as the directory name to store the files in, this will be something like "http://your.domain.com/limesurvey/admin/admin.php".You should get a login screen. The default login credentials are
User: admin
Password: password
Password: password
You will be prompted to change the default password after you logged in. Have fun!
10. What if I have problems...
Like all computer programs, most of the time things will work just like the instructions say, but sometimes they just won't. There are too many possible reasons for things not going according to plan to describe here. If you have trouble, first check out the Installation FAQ. If you don't find your answer there please post your problem and any error messages in the LimeSurvey forumsVideo tutorials
These video tutorials are not maintained or created by us and should only be used as additional 'mental' support. They are not a replacement for reading the written instructions above!- OSS Watch How to install and configure LimeSurvey v1.01 in Ubuntu Feisty
.
- OSS Watch Upgrading from LimeSurvey 1.01 to LimeSurvey 1.52+ build 3304 2007-09-20 in Ubuntu Feisty
.
- + : A leading plus sign indicates that this word must be present in every object returned.
- - : A leading minus sign indicates that this word must not be present in any row returned.
- By default (when neither plus nor minus is specified) the word is optional, but the object that contain it will be rated higher.
- < > : These two operators are used to change a word's contribution to the relevance value that is assigned to a row.
- ( ) : Parentheses are used to group words into subexpressions.
- ~ : A leading tilde acts as a negation operator, causing the word's contribution to the object relevance to be negative. It's useful for marking noise words. An object that contains such a word will be rated lower than others, but will not be excluded altogether, as it would be with the - operator.
- * : An asterisk is the truncation operator. Unlike the other operators, it should be appended to the word, not prepended.
- " : The phrase, that is enclosed in double quotes ", matches only objects that contain this phrase literally, as it was typed.
