ShopSite 6.0
Scripted Installation Instructions
These instructions provide steps for installing and configuring the ShopSite software using the installation and configuration scripts.
If you are upgrading from a previous version of ShopSite, please use the upgrading instructions.
Table of Contents
- I. Pre-Installation Considerations
- II. Planning ShopSite Directories
- III. Mall Initialization
- A. Edit the config_mall.aa File
- B. Run the start_install_mall_sc Script
- C. Configure the Web server
- IV. Store Initialization
- A. Edit the config_store.aa File
- B. Run the start_install_store_sc Script
- C. Configure the Web Server
- D. Tell the Seller that the Store is Ready
- V. Customizing ShopSite
- Your server must have the minimum hardware and software requirements.
- Your Web server software must be working correctly, including user authentication. If your Web server is not working, you cannot install ShopSite. If you do not have a Web server, a good one is Apache. It is free. ShopSite works with all NCSA compatible Web servers such as Netscape and Microsoft's IIS.
ShopSite puts files in five directories:
- Executable files are put in two separate directories, a "ShopSite Directory" and a "Shopping Cart Directory". These directories need to be aliased in your server and accessible through URLs.
® Put these directories in or under your server's cgi-bin directory. As a security measure, you should configure your server to only serve CGI programs from the cgi-bin directories, not text files or HTML files.
- Graphics used by all ShopSite stores are stored in a separate directory that must be accessible by the Web server. The recommended directory is shopsite-images under your Web server's document root.
- Your store needs a "Data" directory to hold its databases of products and pages.
® Set the permissions on the "Data" directory so that your Web server can access it, but make sure that it cannot be accessed from a browser. In other words, do not put the "Data" directory under the Web server's document root directory.
- Your store also needs an "HTML Output" directory to store its HTML files, which are the generated pages for the store. The storefront URL must be aliased to the store's HTML Output directory.
® Put the HTML Output Directory wherever your existing HTML goes.
Note that the images for each store are kept in a media subdirectory of the store's HTML Output Directory, and you may want to configure FTP access to the media directory.
These installation instructions refer to these directories and their associated URLs by their generic function, such as SHOPSITE_DIRECTORY, not by name. You, as the installer, must provide the actual names. Plan the directory locations before starting the installation. An example directory structure might look like this:
home
httpd
cgi-bin
ss = SHOPSITE_DIRECTORY
aliased to SHOPSITE_URL, such as
http://www.xyz.com/cgi-bin/ss
= SHOPPING_CART_DIRECTORY
aliased to SHOPPING_CART_URL, such as
http://www.xyz.com/cgi-bin/sc
html
shopsite-images
Store1 = HTML_DIRECTORY aliased to Seller 1's STORE_FRONT_URL
Store 1 pages
media Seller 1 may need FTP access
Store 1 images
Store2 = HTML_DIRECTORY aliased to Seller 2's STORE_FRONT_URL
Store 2 pages
media Seller 2 may need FTP access
Store 2 images
data
Store1 = DATA_DIRECTORY
Store2 = DATA_DIRECTORY
You must edit one configuration file and run one shell script to prepare your content server to host ShopSite stores. The script creates directories and installs software on the server.
The config_mall.aa file contains settings used by the installation scripts to configure your mall and stores.
- Log in or su to the UNIX_WEB_USER_ID account.
- Change directory to the location of the install files.
- Open the config_mall.aa file with an editor and set values for the following variables. Note that there may be other variables in the file in sections indicating that they are for TX only; you can ignore those variables.
- SHOPSITE_DIRECTORY
- Absolute pathname of ShopSite directory; all CGI scripts for the merchants to create and manage their stores reside here. The directory will be created if it does not exist.
- SHOPSITE_URL
- Absolute URL that references the SHOPSITE_DIRECTORY. This should point to a cgi-bin directory, such as http://host/whatever/cgi-bin/ss.
- SHOPPING_CART_DIRECTORY
- Absolute pathname of the shopping cart directory; CGI scripts for creating orders reside here. The directory will be created if it does not exist.
- SHOPPING_CART_URL
- Absolute URL that references SHOPPING_CART_DIRECTORY. This should point to a cgi-bin directory, such as http://host/whatever/cgi-bin/sc.
- SHOPSITE_IMAGE_DIR
- Absolute pathname of the directory for storing graphics used in the ShopSite merchant interface. The directory will be created if it does not exist.
- SHOPSITE_IMAGE_URL
- Absolute URL that references the SHOPSITE_IMAGE_DIR. This should be located under the Web server's document root, such as http://host/shopsite/shopsite-images.
- UNIX_WEB_USER_ID
- The Web server user ID.
- UNIX_WEB_GROUP_ID
- The Web server group ID.
- PATH_TO_TAR
- Absolute pathname to tar executable, for example, /bin/tar.
- PATH_TO_SENDMAIL
- Absolute pathname to the sendmail executable, for example, /usr/bin/sendmail.
- LOG_DEBUG
- Set to YES (all caps) to enable logging debug messages to a log file.
- DEBUG_LOG_DIRECTORY
- The full path name, with no file name, to where the log file is to be stored.
- DEBUG_LOG_FILE
- The log file name.
- BACKUP_ON_UPDATE
- If this is a new installation, enter NO. If you are updating an existing mall, enter YES to have the update script back up the existing ShopSite directories to tar files. The tar files can get large, so enter NO if your system does not have much available disk space.
Note: Tar on Solaris complains about symbolic links longer than 99 characters, and may not include those links in the tar file.
- SERVER_LOG_PATH
- Full path name to the directory where server logs are stored.
- SERVER_LOG_NAME
- File name of the server log file.
- Double-check the values that you set, and then save and close the file.
- Make a copy of the config_mall.aa file, as a security measure against the file being overwritten or erased.
The start_install_mall_sc script performs initial configuration of the ShopSite software.
- Make sure that the UNIX_WEB_USER_ID and UNIX_WEB_GROUP_ID are set as "owner" and "group "of the SHOPSITE_DIRECTORY and SHOPPING_CART_DIRECTORY.
- Log in or su to the UNIX_WEB_USER_ID account.
- Verify that your csp.id file is in the same directory as the start_install_mall_sc.ksh script.
- Run the script.
% start_install_mall_sc.ksh config_mall.aa
Note: All the scripts are designed to run under a KornShell (ksh). If your server does not have ksh installed, you may need to edit the scripts to run under a different shell. If you have problems running the scripts, try typing a "./" before the script name, for example, ./start_install_cgi instead of start_install_cgi.
- Check the log file for errors. If you left the LOG_DEBUG variable set to YES, then the install script created a log file in the DEBUG_LOG_DIRECTORY. The default name for the file is debug.log. Examine this file to ensure that there are no FAILED messages. If you find any of these messages, correct the problem (most likely a file permission problem) and rerun the script.
Configure the Web server to recognize the new directories:
- Alias the SHOPSITE_URL to point to the SHOPSITE_DIRECTORY.
- Alias the SHOPPING_CART_URL to point to the SHOPPING_CART_DIRECTORY.
The config_store.aa file and the start_install_store_sc.ksh script are provided as examples of how to call the underlying script that creates and initializes stores, which is install_store_sc.ksh. These scripts accept command line parameters, such as those passed by the start_install_store_sc.ksh script. You can customize the example script to suit your needs or create your own script. You may choose to configure your server such that, once a seller requests a store by filling out an online form, the store will be created with no operator intervention required.
The start_install_store_sc script reads the settings in the config_store.aa file and creates the data and HTML directories for a new store and performs other configuration on the content server. You can either edit the config file each time you need to create a store to set the values for that particular store, or configure the script to accept command-line variables. These instructions show you which variables to set.
- Open the config_store.aa file with an editor and set values for the following variables:
- SHOPSITE_STORE_ID
- A merchant user name, ideally 8-80 characters in length. This is the user name that the merchant uses to access ShopSite (the SHOPSITE_URL is password-protected).
- SHOPSITE_SELLER_PASSWORD
- The password associated with the SHOPSITE_STORE_ID. This should be 8-20 characters in length and containing at least one number. This is the password that the merchant uses to access ShopSite (the SHOPSITE_URL is password-protected).
- STORE_FRONT_URL
- Absolute URL of the merchant's storefront, that is, the store that is accessible to the merchant's customers via the Internet.
- SECURE_SHOPSITE_IMAGE_URL
- Specify the URL that ShopSite should use for images on secure pages, such as the order form. Usually this is the same as the SHOPSITE_IMAGE_URL, with the addition of https: instead of http:.
- SELLER_EMAIL
- The merchant's e-mail address. This must be correct, as the merchant is notified of orders and other important information via e-mail.
- DATA_DIRECTORY
- Absolute pathname to the data directory for the merchant's store. This directory will hold the product and pages database.
- HTML_DIRECTORY
- Absolute pathname to the HTML directory for the merchant's store. This directory will hold the generated HTML pages for the store.
- SELLER_USER_ID
- The UNIX user ID to be assigned to the store's HTML directory. You can assign each merchant a separate user ID, or use the same ID for all merchants.
- SELLER_GROUP_ID
- The UNIX group ID to be assigned to the store's HTML directory.
- PRODUCT_TYPE
- Enter the service level of the store: pro, mgr, lte, or exp.
- MERCHANT_LOCALE
- An identifier for the language and locale that the merchant will see. This must be one of the supported ShopSite locales defined in the localeinfo.dat file in the shopsite directory, such as en-US.
- BUYER_LOCALE
- An identifier for the locale and language that buyers will see in the store. This must be one of the supported ShopSite locales defined in the localeinfo.dat file in the shopsite directory, such as en-US. Do not enter a locale for which there is no language pack installed.
- STORE_CURRENCY
- The currency to use in the store. This value must be a three-character ISO 4217 currency code, as defined in the currency.dat file in the shopsite directory.
- STORE_TYPE
- 0 = default
- PAGE_LIMIT
- The maximum number of pages allowed in this store. Leave blank for no limit.
- PRODUCT_LIMIT
- The maximum number of products allowed in this store. Leave blank for no limit.
- UPDATE_HTPASSWD
- Defaults to YES, which tells the install script to update the .htpasswd file. If set to NO, the install script will not update the file.
Note: ShopSite only sets up Apache-style passwords, using .htaccess files. If you are using a Netscape server, you can configure it to use .htaccess files by following the instructions at the Netscape site.
- USE_SECURE_SHOPSITE
- Enable/Disable using a secure connection when the merchant views orders. Set to YES only if you have a Web server that supports SSL and you have purchased a certificate for the server from a valid certificate authority.
- SECURE_SHOPSITE_URL
- Specify the URL of the secure ShopSite CGI. Usually this is the same as the non-secure CGI with the addition of https: instead of http:.
- USE_SECURE_SHOPPING_CART
- Enable/Disable using a secure connection when customers enter payment information. Set to YES only if you have a Web server that supports SSL and you have purchased a certificate for the server from a valid certificate authority.
- SECURE_SHOPPING_CART_URL
- Specify the URL of the secure shopping cart CGI. Usually this is the same as the non-secure CGI with the addition of https: instead of http:.
- Double-check the values that you set, and then save and close the file.
- Make a copy of the config_store.aa file, as a security measure against the file being overwritten or erased.
B. Run the start_install_store_sc Script
- Log in or su to the UNIX_WEB_USER_ID account.
- Run the script, passing in the two configuration files as parameters:
% start_install_store_sc.ksh config_mall.aa config_store.aa
Make the following administrative changes to the Web server:
- Alias the STORE_FRONT_URL to the HTML_DIRECTORY for the store.
- Password-protect the SHOPSITE_DIRECTORY with the user name SHOPSITE_STORE_ID and the password SHOPSITE_MERCHANT_PASSWORD. Most likely you will be adding this user name and password to a list or file that controls access.
Note: |
ShopSite only sets up Apache-style passwords, using .htaccess files. If you are using a Netscape server, you can configure it to use .htaccess files by following the instructions at the Netscape site.
|
You have completed initializing a new store. Now contact the merchant and give them:
- The URL they'll use for administering their store - it's the SHOPSITE_URL with /start.cgi appended.
- The SHOPSITE_STORE_ID (user name) and SHOPSITE_SELLER_PASSWORD (password) that they will need to log in to ShopSite.
You can customize parts of the interface that sellers and customers see as they interact with ShopSite. For more information, see the page on Customizing ShopSite.