Create Files to Upload to Server
SSI Web survey authors install SSI Web on their local PC. When they are finished creating a survey, they click Field | Prepare for Web Upload.
Prepare for Web Upload assembles the files required to run the web survey. It places these files in a "Web Upload" folder inside the study folder. These files are later uploaded to the web server by using FTP software.
Uploading Files and Folders
The files and folders created in the Web Upload folder need to be set up and configured on your web server. The default configuration is to have a cgi-bin folder for each study. Some ISPs do not allow this. For configurations other than the default see the Configuring a Common CGI-BIN for All Studies section below.
The contents of the Web Upload folder are usually uploaded to the web server via FTP (File Transfer Protocol). FTP is a method in which you can transfer (upload) files from your local PC to the web server on the Internet. To FTP your files you will need an FTP program. We recommend WS_FTP (http://www.ipswitch.com)
When uploading files to the web server it is essential that you upload in binary mode. Binary mode ensures that the file is not changed in any way during the upload process. The size (number of bytes) of all files should be the same on the web server as they are on your local PC.
Certain permissions need to be set for SSI Web to work properly on your web server. Perl needs to be installed on the server and the Perl scripts (ciwweb.pl and admin.pl) need permission to execute. Other permissions also need to be set so that these scripts are able to read, write, and delete files in the admin and data directories.
Unix file permissions can be set through an FTP program. In WS_FTP, right-click the file, select FTP Commands, and then CHMOD. In the table below, all the files and folders necessary for SSI Web to run are explained. The Unix permissions that need to be set are also shown. "STUDYNAME" is used to represent the name of your study.
|File / Directory||Description||Unix Permissions*|
|STUDYNAMElogn.htm||Login page. Entry point for respondents.||404 r _ _ | _ _ _ | r _ _|
|STUDYNAMEadmn.htm||Admin Module login page. Entry point for study administrators.||404 r _ _ | _ _ _ | r _ _|
|admin||Folder or directory.||703 r w x | _ _ _ | _ w x|
|STUDYNAMEqst.cgi||Main web questionnaire file.||404 r _ _ | _ _ _ | r _ _|
|STUDYNAMEpath.cgi||Contains server path information.||404 r _ _ | _ _ _ | r _ _|
|STUDYNAMEpacc.cgi||Contains Admin Module passwords.||404 r _ _ | _ _ _ | r _ _|
|STUDYNAMEpidx.cgi||Respondent password index file. Index for password ranges in p???.cgi files.||404 r _ _ | _ _ _ | r _ _|
|STUDYNAMEp???.cgi||Contains respondent usernames, passwords, and quota settings. ??? represents 001, 002, 003, etc.||606 r w _ | _ _ _ | r w _|
|** STUDYNAMEdsgn.cgi||Design file for CBC/Web studies.||404 r _ _ | _ _ _ | r _ _|
|* STUDYNAMEctxt.cgi||Conditional relationship text for CBC/Web studies with conditional relationships.||404 r _ _ | _ _ _ | r _ _|
| *** STUDYNAME_MXD
|Design file for MaxDiff/Web studies.||404 r _ _ | _ _ _ | r _ _|
|cgi-bin||Folder or directory that contains all of the Perl files.||101 _ _ x | _ _ _ | _ _ x|
|ciwweb.pl||755 r w x | r _ x | r _ x|
|admin.pl||755 r w x | r _ x | r _ x|
|ciwlibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|authlibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|pverlibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|grdlibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|enterlibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|acalibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|cbclibXXX.pl||404 r _ _ | _ _ _ | r _ _|
|graphics||Folder or directory that contains all the graphics in your study.||707 r w x | _ _ _ | r w x|
|data||Folder or directory that will contain respondent data.||707 r w x | _ _ _ | r w x|
* Unix Permission Notation - The notation consists of three sets of the letters r, w, and x. The letter "r" stands for "read", "w" for "Write" and "x" for "Execute." The first set of letters is for the Unix group "Owner", the second for "Group", and the third for "Other." So the full permissions of r w x | r w x | r w x or 777 give "read", "write", and "execute" permissions to "Owner", "Group", and "Other."
** Only for CBC/Web studies
*** Only for MaxDiff/Web studies
After uploading these files and folders, and setting correct permissions, your survey should be working. Go to STUDYNAMElogin.html on your web site and test your survey, making sure the study behaves as expected and that it is saving data properly. Remember to log into the Administrative Module through STUDYNAMEadmin.html to see your results and download your data.
If you are getting errors, see the Common Mistakes section below.
Configuring a Common CGI-BIN for All Studies
The default configuration of SSI Web has a separate cgi-bin directory inside each study root directory. Some web server configurations and ISPs do not allow this. They have a specific location where all CGI scripts must reside in order to execute. The following steps outline how to make SSI Web work with this alternate configuration:
Upload all of the SSI Web Perl files (*.pl) to the location where they have permission to execute (the "common cgi-bin").
In the authoring interface of SSI Web, go to File | Settings | Advanced Settings. Modify the default paths to account for the new location of the Perl scripts. The following list describes the Server Directory Paths that need to be modified:
- Administrative Directory: Path from the Perl scripts to the admin directory.
- CGI Scripts Directory: Path from STUDYNAMElogn.htm to the Perl scripts.
- Data Directory: Path from the Perl scripts to the data directory.
- Relative Path from CGI Scripts to Graphics: Path from the Perl scripts to the graphics directory.
- Relative Path from logn.htm to Graphics: Path from STUDYNAMElogn.htm to the graphics directory.
These changes are stored in the STUDYNAMEpath.cgi, STUDYNAMElogn.htm, and STUDYNAMEadmn.htm files. The notation "../" means go up one directory.
For example, given the directory structure:
\cgi-bin ciwweb.pl admin.pl (etc.) \htdocs \study1 \admin \data \graphics STUDYNAMElogn.htm STUDYNAMEadmn.htm
The alternate paths are:
- Administrative Directory: ../htdocs/study1/admin/
- CGI Scripts Directory: ../../cgi-bin/
- Data Directory: ../htdocs/study1/data/
- Relative Path from CGI Scripts to Graphics: ../study1/graphics/
- Relative Path from logn.htm to Graphics: graphics/
- Remove STUDYNAMEpath.cgi from the admin directory. Upload the STUDYNAMEpath.cgi with the modified path information to the "common cgi-bin" directory next to the Perl scripts.
Make Sure Perl is Working
The best way to verify that Perl is working properly on your server is to use a test script named "test1.pl". You can get "test1.pl" by downloading the file.
Simply unzip the contents of the file and upload "test1.pl" to the cgi-bin folder on your web server. Give "test1.pl" proper execute permissions (755) and test it by browsing to it on your web site (i.e.
http://www.yoursite.com/study1/cgi-bin/test1.pl. The test is successful if you see "Debug Test #1 Successful" on your screen. If you get an error message, or if the code of the script is displayed on the screen, the test failed. Please contact your system administrator for help in running this simple Perl script.
The Perl files (*.pl) need to be uploaded to your web server in "Binary Mode". The two main Perl files are ciwweb.pl and admin.pl. Both of these files need "execute" permissions. Our Perl scripts need to know where the Perl.exe is installed on the web server. Sometimes this is called the "Path to the Perl Interpreter". This path could vary across web servers. You will need to find out from your hosting provider what their Perl path is.
The SSI Web license agreement specifies that our users are not allowed to modify our Perl scripts. However, you are allowed to modify the Path to the Perl.exe. This path can be found at the top of the Perl files ciwweb.pl and admin.pl.