SurfShopCart Documentation

Setting Up Shop Has Never Been Easier!

User Tools

Site Tools



We recommend that you print this document and follow along as you go through the installation process. It is a lot less intimidating than when you see it in your web browser.

Quick Start Installation

  1. Check that the CGI’s are pointing to perl5 on your server (i.e., #!/usr/bin/perl, etc.)
  2. Upload the following directories and ALL THEIR CONTENTS:
      surfshop	-> cgi-bin  (use ASCII mode)
      ssdata  	-> user directory above document root if possible  (use ASCII mode)
      ssimages 	-> document root (“store” directory is for uploads, and must be writable)
  3. Scripts must be executable by the web server (755 or 711, depending on server config)
    • shop.cgi
    • admin.cgi
    • autoconfig.cgi
    • forceorder.cgi
    • useradmin.cgi
  4. Data files must be writable by the web server (666, 644 or 600), depending on server config)
      ssdata/1/data/* (all files)
      ssdata/1/output/* (all files)
  5. Data directories must be writable by the web server (777 or 755, depending on server config)
  6. Run autoconfig.cgi and follow prompts: 
  7. If you are having trouble, you may need to manually create the file, “.datadir.dat” in the surfshop directory and make it writable (666, 644 or 600, depending on server config)
  8. Link your site to shop.cgi: 
  9. Use admin.cgi to manage/fine-tune: 
  10. Use sample.htm as a guide for linking static HTML pages to SurfShop™

Installing SurfShop - Long Version

1. Unpack the files

Unzip the zipped surfshop archive using a decompression utility. Once decompressed, you should have all of the files listed under Manifest in the ReadMe text document included in the Surf Shop distribution.

2. Upload Data Files

If you are performing a complete installation, NOT an upgrade:

Using an FTP utility, log in to your server and upload the entire ssdata folder somewhere outside the cgi-bin. We recommend installing this directory at the root of your user directory ABOVE THE DOCUMENT ROOT or in a directory pre-configured for this purpose.

Continue to step 3…

If you ARE upgrading from any previous version:

Version 7 has made numerous changes to the way SurfShop™ reads and manipulate template files. For this reason, we recommend a complete re-install of your output templates. The installer will still convert your old ones, but you will not be able to utilize any of the new functionality unless you install the new templates.

Make sure you have backup copy in case the migration causes any data to be lost or misplaced. Copy your existing ssdata directory into a new location, named “ssdata_bak”, or something like that. You should also make copies of the old cgi scripts so that you can go back to them, if necessary.

Upgrading from version 6 or lower:

We recommend that you replace your existing output templates with the new versions, so copy the entire contents of the “output” folder to your current “output” directory.

Copy the old ssdata folder from the previous store into your new ssdata folder.

These directories should now reside in the new ssdata folder:

   ssdata (old)

Since many of the field names and file names have changed from prior versions, we have included routines to handle the process of converting old sites to the new format. To upgrade your existing SurfShop™ store to version 7, follow these instructions carefully.

The program will recognize the previous folders and prompt you to select the files you wish to upgrade. The program will then automatically convert your old data into the new format. If you choose to do so, it will also re-write your templates with the new codes as well so that they will work with the new system.

Once the installation is finished, delete the old ssdata and templates directories (if the program was unable to do so.)

  • Note: While SurfShop™ can convert most files from previous versions, some customization may be necessary. Many of the new features simply WILL NOT WORK with templates from previous versions. It is recommended that you export your data from your old install, check the field headers in the new install (and make any necessary changes), then upload your data to the new intall.

3. Set Data Permissions

If you have not had experience with file permissions or navigating through Unix directories, read the section entitled Web Essentials.

  1. Navigate to /ssdata/1/data
  2. Set the permission of ssdata/1/data so it is writable by the web server. This may be 0777 or 0755, depending on your web server.
  3. Set the permissions of the files in ssdata/1/data so they are writable by the web server. This may be 600, 644, or 666, depending on your web server.
  4. Set the permissions of the files in ssdata/1/output so they are writable by the web server. This may be 600, 644, or 666, depending on your web server.
    • Existing users: this is a new step. The new system modifies the output templates on the fly, so write access is necessary.
  5. Set the permission of ssdata/tmp so it is writable by the web server. This may be 0777 or 0755, depending on your web server. This directory is used as a temporary storage place for uploaded files.

4. Verify "shebang" lines

The first line of every Perl script (sometimes affectionately called the “shebang” line) must contain a pound sign (“#”), followed by an exclamation point (“!”), followed by the path to the Perl interpreter on the server. It tells the server “this is a script so take me to the script interpreter!” If there is ANYTHING before this line, or if the path is incorrect, the program will bomb. Your Web host can give you the correct path to Perl, however most systems will work with either of these two paths:


Use a text editor to check the shebang line in each of the files below:

  • shop.cgi
  • admin.cgi
  • autoconfig.cgi
  • forceorder.cgi
  • useradmin.cgi

5. Upload CGI scripts

If this is a new install, copy the new “surfshop” directory to your cgi-bin directory (your private executables directory.) Sometimes this is called “cgi-local” or just “cgi” You may change the name of the surfshop directory to anything you wish, as long as you use the new name when configuring the program.

If you are upgrading, just copy the new scripts to your existing surfshop cgi directory, replacing the old cgi's.

• Make sure you use ASCII (text) data format when uploading these files. A common problem is caused by differences in the encoding of text files across different platforms. Most FTP programs will automatically convert these differences if you use ASCII (text) mode.

6. Set Script Permissions

Set the permission of each script to be executable by the web server (711 or 755, depending on web server).

  • shop.cgi
  • admin.cgi
  • autoconfig.cgi
  • forceorder.cgi
  • useradmin.cgi

7. Upload Images

Copy the “ssimages” directory to your Document Root. This folder contains all of the graphics used by the Admin Pages and the sample store.

  • Make sure you use Binary data format when uploading these files.

8. Enable File Uploads

Set the permission of the “store” directory (in the “ssimages” directory) so that it is writable by the web server. (755 or 777)

Set the permission of the “tmp” directory (inside the ssdata directory) so it is writable by the web server (755 or 777).

If you do not wish to use the upload capabilites for security reasons, you may reset the permission after installing. The installer doesn't like it when it can't write files.

  • If these directories are not present in your distribution, you must create them. Because they begin empty, your ZIP application may not include them when it unpacks the files.

9. Set Directory Permissions

Directories are set to 755 by default. It may be necessary to set certain directories' permissions to 777 so that the program can create and write to new data files, particularly on SSL servers. See “Troubleshooting” for more information.

  • We do not recommend leaving your the “surfshop” directory writable after the initial installation. If “surfshop” must be set to 777 to configure the program, CHANGE IT BACK TO 755 BEFORE GOING LIVE.
  • In some cases, the web server will generate an error if you attempt to execute the scripts while the script directory is set to 777. CHANGE IT BACK TO 755 to fix the problem.

Running autoconfig.cgi

Depending on where you installed the cgi scripts, the URL to the installation program, “autoconfig.cgi”, will vary. Generally, the URL will follow the following format: 

If you see the welcome screen, congratulations! So far everything is working correctly. If you DON'T see the welcome screen, read the section entitled “Troubleshooting” elsewhere in this document.

  • Do not run autoconfig under SSL unless you ONLY intend to use SSL. The program cannot set the system correctly otherwise.


Read the agreement carefully. If you agree to the terms, click “I Agree” and continue.


Usernames and Passwords

When choosing a username and password, use only alphanumeric characters and the underscore. Do not use any other characters, as SurfShop will not recognize them.

Data Directory

At this point, the program runs a diagnostic on the data directory to see if it can write to the files. If there is a problem, you will be given instructions on how to correct it.

  • The paths that are displayed automatically may not be accurate. Your ISP can provide you with the correct file paths to your site.

Enter the file path to your “ssdata” directory in the input window. If you are not familiar with file paths, read the section entitled “Web Essentials.”

Now you can proceed to Global Config Settings

Main Page

installation.txt · Last modified: 2018/08/13 00:21 by kinetic8sp