Creating a ShopSite Mall
ShopSite merchants who manage more than one online store, or shared hosting providers, can install multiple ShopSite stores on a single server as a Mall. A ShopSite mall is a group of multiple individual ShopSite stores that use a common set of ShopSite CGIs while keeping individual store information separate. This can provide a significant savings in disk space requirements, but has no effective impact on the individual stores.
Note: |
Most ShopSite resellers and Web hosting providers will automatically install ShopSite on your server for you. You should contact the reseller or hosting provider if you have questions about your ShopSite installation.
|
Warning: |
Whenever connecting to your server for administrative purposes (such as installing or upgrading ShopSite), you should use a secure connection. Telnet and standard FTP are both unencrypted connections, and could be intercepted. Always use a secure connection, such as SSH for shell connections, and FTP over SSH or SFTP for file transfers.
|
Overview
A ShopSite mall is not fundamentally different from a ShopSite store, as far as the resources required. You can, in fact, upgrade an existing store to a mall.
The instructions below are applicable to both Linux/UNIX and Windows servers, but to avoid unnecessary confusion, the link references are only for Linux/UNIX installations. For Windows servers, the referenced information can be found on the Installing ShopSite on Windows Servers help page.
Installing a New Mall
Installing a new ShopSite mall is the same as installing a store. The initial mall installation, in fact, is done by installing the first store. The key difference is that when planning the locations for your content, you may want to use different locations and URLs to better accommodate multiple stores. The best way to set up your mall depends greatly on the way your Web server is set up, and how you will be accessing the individual stores and shared CGIs. The following are a few things you may want to consider when planning to install a new mall:
- Secure Web Access
Secure access to Web sites is achieved using SSL. One limitation of SSL is that each IP address can only have one SSL certificate. If you do not want your customers to get warnings about the SSL certificate not matching the domain name, you will need to make sure that the secure Shopping Cart URL uses the same domain as the SSL certificate.
- Many modern Web servers can have multiple IP addresses, each with its own SSL certificate. This would allow you to have a unique certificate for each domain name while still sharing the CGIs.
- If multiple IP addresses is not an option, you can use a single domain with an SSL certificate for all the stores. Each individual storefront could have a unique domain name, but secure URLs would use a common domain name. This would not affect the appearance or functionality of the individual stores.
- Access to Common CGIs
The common CGIs shared by all the stores in a mall must be accessible to each store in the mall. This means that each individual store and the shared CGIs must have the correct file permissions to allow the Web server access, and that each store can access the CGIs through the Web server.
- The file system (FTP and Shell) path of the CGIs does not matter as much as the Web path of the CGIs. You could put the CGIs in the primary Web server path, or in a sub-hosted domain, as long as the Web server can see and run them.
- If the CGIs will be accessed using each individual store's domain name, you will need to make the common CGI directory visible to each domain name. This can be done by creating Web server aliases or file system symbolic links (shortcuts) to the common CGIs for each store.
- If the CGIs will be accessed using a single common domain name for all the stores, you will need to make sure the common domain has access to the HTML and data directories for each of the individual stores. This can be done by creating Web server aliases or file system symbolic links (shortcuts) to the data and HTML directories of each of the stores.
- Protecting Merchant Privacy
Sharing CGIs does not mean sharing DIP. Individual merchants should not have access to the data or HTML directories of other merchants. If your merchants have FTP or Shell access to their HTML directories, you should set up the permissions so they cannot see or modify the other HTML directories of the other merchants.
- The common CGIs do not need to be accessible to any merchants through FTP or Shell. The best location for the common CGIs is outside any individual merchant's home directory. You may put the CGIs under the root Web server, or under an individual subhost, so long as none of the merchants have FTP or Shell access to them.
- Although each store has its own data directory, the data directories do not need to be accessible to the merchants through FTP or Shell access. You may want to congregate all the data directories in a common location outside the home directories of all the merchants. If, for example, you put the common CGIs in the /www/cgi-bin/ directory on the server, you might want to create a /www/shopsite-data/ directory where each individual store's data directory would be.
- Many merchants may want or need FTP access to their HTML directories, although they should avoid making changes to any content generated by ShopSite. If you grant your merchants FTP access, you should make sure they can not access the common CGIs or the HTML directories of other stores. This requires special care when setting up file permissions to allow the Web server access to all the HTML directories.
Once you have determined where to put the various content and have made any configuration changes necessary, you are ready to begin installing your mall. Select one of the stores to start with, and follow the instructions for installing a single store. Once you have one store running, follow the instructions to add more stores to your mall.
Converting a Store to a Mall
If you already have a store installed and running on your Web server, converting it to a mall is as easy as adding another store. If the first store was not initially installed to be a mall, however, there may be some privacy and access considerations you will need to adapt for.
Review the instructions for installing a new mall above, and determine how to address the factors discussed. In most cases, you can make file permissions and Web server configuration changes to accommodate your current setup. In some cases, however, you may need to re-install the store.
To re-install an existing store in a new location on the same server:
- Do not try to upgrade the store at the same time you are re-installing it. If necessary, upgrade the store first, then move it after you have confirmed that the upgrade was successful.
- Back up your existing store. Make sure your store's data directory and store pages directory (including the media directory) have been backed up before you make any changes to your store. It is a good idea to store a backup copy of your store content in a compressed archive on your local computer.
- If moving the store will change the URL of the store pages directory, you will need to acquire a new auth file for your store.
- To avoid any complications, it is a good idea to disable your current store before installing the new one. You should make the move at a time that will not have a significant impact on your customers.
- If you are moving the store pages directory, create the directory and copy all the content from the old directory to the new location.
- Disable the old store by removing Web access to the old CGIs. You may want to wait until you know the store is working in the new location before actually removing the old CGIs.
- Make any changes to your Web server configuration that may be required for the new store location.
- Follow the instructions to install a new store using the new location on the server.
- Once the new store is installed, copy all the contents of your old data directory over the contents of the new data directory. This will replace the new store settings with the settings from your old store.
- Log in to the merchant back office for the new store and check that your old settings are intact. You may need to re-select your Payment Processor, although the settings for that processor should be intact.
- If the move affected the URL of your media directory, you should reset all attributes from the Images management screen.
- Check the Preferences > Hosting Service screen and make sure all the settings are correct for your new location.
- If you have any hard-coded URLs anywhere in your store content that are affected by the move, update them.
- Publish the store and check to make sure there are no errors or missing content on your store pages. You may also want to go through and place a test order to make sure everything is working correctly.
- Once the new store is working, you should delete the old CGI directories, as well as any other content from the old store that is not being used by the new store.
Adding Stores to a Mall
Once you have a mall running with a single store, adding more stores is simple and straightforward. The steps for adding stores are the same, no matter how many more stores you add:
- Adding stores to a mall uses the same install programs as installing a new store. If necessary, follow the instructions to obtain and upload the ShopSite installation files.
- If necessary, upgrade the existing stores before adding new stores. Your existing stores must be running the same version of ShopSite as the install programs used to add new stores.
- Obtain an auth file for the new store and copy it to the Install CGI Directory with the filename store.auth.
- Enter the Install Directory URL followed by /wwwinstall.cgi into the location bar of your Web browser, then press Enter.
- Example Install URL: http://www.mystore.com/cgi-bin/shopsite-install/wwwinstall.cgi
- Select the radio button under Existing ShopSite to Add a store, then click Continue.
- The next screen is where you will enter the settings, including directory locations and URLs, for the store. See the installation instructions for new stores for an explanation of these fields. Note that any fields that can not be changed from the initial store are not available when adding a store.
- If you have not already created the directories ShopSite will use, check the box for Do you want Install to create any directories that do not already exist?. If you set up your permissions properly, ShopSite should be able to create these directories.
- Click OK to add the new store with the settings you specified. The progress of adding the new store to your mall will be displayed on the screen. When the store has been added, the words Installation Completed will be displayed in large text at the end of the screen.
- Log in to the new store to make sure everything is working as it should. If there are any problems, see the troubleshooting information for new stores. Any problems you encounter adding a store are likely to be caused by the same things that would cause problems installing a new store.
Upgrading a Mall
Upgrading a mall follows the same process as upgrading a store. Because all stores in a mall use the same CGIs, all the stores will be upgraded to the new version, but new features may not be available for all the stores.
Any stores which will not incur additional fees to upgrade will automatically get all the new features. There are usually no additional upgrade fees for point release upgrades (e.g. ShopSite 8.0 to 8.3), or for store licenses leased on a monthly basis.
Stores which will incur additional fees to upgrade will not automatically get all the new features. They will still have the new CGIs, but will not have access to the new features until you manually enable the new features. If you manually enable features for such stores, you will be charged the relevant upgrade fees.
To enable new features in an upgraded store:
- Enabling new features uses the same install programs as installing a new store. If necessary, follow the instructions to obtain and upload the ShopSite installation files.
- You must use the correct install programs for the version of ShopSite your mall is currently running. If necessary, upgrade the existing stores before enabling new features for other stores.
- For the install programs to run, you must copy the auth file for one of the stores to the install directory, and name the file store.auth.
- Enter the Install Directory URL followed by /wwwinstall.cgi into the location bar of your Web browser, then press Enter.
- Example Install URL: http://www.mystore.com/cgi-bin/shopsite-install/wwwinstall.cgi
- Select the radio button under Existing ShopSite for Mall feature administration and click Continue.
- From the drop-down menu, select the storeid for the store in which you want to enable new features.
- Select the radio button labeled Enabled and click Update Store. The selected store will have the new features enabled, and you will be charged the relevant fees.