Announcement:Materials and articles for ProductCart 5 can be found at our brand new support center.

Create an account to edit articles | See Formatting Syntax for Wiki syntax | We look forward to your contribution!

Moving your ProductCart-powered Store

Types of Move

There are many reasons for having to move your ProductCart-powered store. For example:

  1. Moving to a new Web hosting company as you are not satisfied with the current one
  2. Moving from a Web server to another Web server within the same Web host
    (e.g. the current Web server appears to be overloaded and you asked to be moved to a new one)
  3. Moving from a staging Web server to a “production” server
  4. Moving from a “production” environment to a testing environment to set up a development or testing version of the store
  5. Moving from a desktop (local development) to a Web server

Steps to Take

The following steps apply to most of the scenarios above.

Planning the move

Before you move the files there are several things to check and to be aware of.

Parent Paths

Check whether the server you are moving to has Parent Paths Enabled or Disabled. It's preferable that the server you are moving has Parent Paths Enabled and more common. If you are switching from a PPD server to a PPE server it's possible to use the PPD version of the files. However, it's more restrictive and you should, if possible, take the opportunity to switch to the PPE version of the files. It is NOT POSSIBLE to use the PPE version of the files on a PPD server. If you are moving from a PPD to a PPE server then either, get Parent Paths Enabled, move to a different server that does have PPE, or, the least preferable option, switch to the PPD version of the files.

Moving a Live Store

Moving a store requires planning, particularly if it's a live store. The move of a live store should be done at a quiet time as it will involve downtime for the site, from the point you close the store to when it is re-enabled on the new server.

The major steps are covered in more detail later, but a summary list is below :-

  • Move the files.
  • Close the store.
  • Move the Database.
  • Test the new store is working OK via the ADMIN pages.
  • Change the DNS to point your Domain to the new server.
  • Enable the store.

Don't forget that the DNS change can take several hours to propagate across the web, so for a few hours some users may still be directed to your old server. This MAY also occur for the responses from payment gateways or other sites which your store interfaces with. If possible allow a couple of hours after changing the DNS before re-enabling the store.

Gather the files

This means, for instance, downloading the folder that contains all of your ProductCart files. The folder is named “productcart” by default, but it is often renamed. In the following paragraphs we will refer to this folder as the “productcart” folder.

Some Web hosting company include a way for your to ZIP a folder via the File Manager utility that is now part of many Web hosting control panels. Check your Web hosting account administration area to see if you have access to such a tool. If so, ZIP the folder that contains your ProductCart-powered e-commerce store and download the zipped file, which is much faster than downloading each individual file (and safer too as you avoid the risk of one or more of the files becoming corrupted during the FTP download).

Upload to the new location

Upload the folder to the new Web server.

If you can unzip a file on the new Web server, definitely upload a zipped folder, which is faster and safer, as mentioned above. Many Web hosting companies now offer you the ability to unzip a file within your Web hosting account. Check to see if you can do so. When you unzip the file, make sure the folder is unzipped where you want it to be. Otherwise, remove the unzipped folder and repeat the task in the right location.

Set folder permissions

Since you moved the “productcart” folder to a new location, permissions need to be reset. See setting folder permissions >>

Connect to the database

The instructions here are different depending on whether you use MS Access or MS SQL:

  1. MS Access: change the database connection string inside the file includes/storeconstants.asp
  2. MS SQL, same database: you did not move to a new Web hosting company, plus simply moved Web server. So the database server is the same one. In that case, change the database connection string inside the file includes/storeconstants.asp
  3. MS SQL, new database: If your store is using a new MS SQL database, then you cannot simply download the database and re-upload it to the new host, as you would do with MS Access. There are two ways to transfer your SQL DB to another hosting provider.
    1. Backup and Restore
      You can obtain a complete backup of your SQL database from the original hosting provider and have your new hosting provider restore it for you. Some Web hosting companies will be able to assist you with this task (they might charge a small fee), but others will not.
    2. Database Migration
      Another option is to migrate the database from the original SQL Server to the new SQL Server. We highly recommend that an experienced DBA perform this task as if it is not done properly your store will not function correctly.

A DSN-less connection is recommended, for more information see defining a database connection in the setup documentation.

Make sure that the NEW store is connecting to the NEW SQL database. The way to ensure that this is the case is to confirm that “includes/storeconstants.asp” contains a connection string to the NEW database, not the old one.

Move the “productcart” folder to the new Web server in advance and set folder permissions. When you are ready to complete the move to the new location, TURN THE OLD STORE OFF (Settings > Store Settings > General Settings) BEFORE transferring the database. Failure to do so could result in orders being missed and potentially other database related problems. Leave the old store OFF on the old server/hosting company indefinitely. It should not be turned back on unless you need to go back to it if the move fails for whatever reason. Once you have re-located the database and can successfully connect to it, you can open the new store. You should not re-open the old store as it is possible, until domain name changes have been fully propagated, that customers in some geographical locations may end up at the old store.

You can test whether the new store is successfully connecting to the new/moved database and whether permissions have been properly been set by using the Setup Wizard. You will not re-activate ProductCart. You will instead stop at “Step 2” of the Setup Wizard to take advantage of its diagnostic tools. To do so, connect to the “Setup” folder on the new Web server, using your browser (the folder might have been renamed with some random numbers - check via FTP), and go to the step where you enter the database connection string. Enter your new database connection string, and run the diagnostic utility.

Change store URL

If the store URL has changed as a result of the move (e.g. staging server uses a domain name different from the production server), you will need to let ProductCart know by changing the editing the store URL inside the file includes/storeconstants.asp

Update store settings

There are a few store settings that need to be reviewed and possibly updated. Log into the ProductCart Control Panel (if you are getting a database connection error, review the steps above).

  1. Home page URL: check that it is still correct (e.g. if the domain name has changed, it might need to be edited)
  2. SSL URL: same as above
  3. E-mail settings: ProductCart supports many different email components. Make sure the one you selected is compatible with the new Web server, and verify the validity of the SMTP server address (ask your new Web hosting company for a valid SMTP server that you can use).

Update third-party systems

Change the URL used by third-party systems that need to communicate with your ProductCart store if there has been a domain name change. For example, payment gateways often use some sort of “call back URL” to send data back to ProductCart (e.g. Google Checkout).

Troubleshooting

E-mails cannot be sent

Two frequent causes for this are:

  • The e-mail component used by your store is not supported in the new hosting environment. Update the e-mail settings: make sure you select an e-mail component that is compatible with the new Web server. If you are unsure, contact your Web host.
  • The SMTP server used by your store is no longer valid as you switched to a new hosting environment. Contact your Web host and ask them for the following information:
    • SMTP server domain (e.g. mail.myNewWebHost.com or mail.myDomain.com or alike)
    • SMTP authetication: does the SMTP server require authentication? If so, you will need to obtain those credentials

Problems during checkout

The most common issues are:

  • Domain name change: did you change domain name as you switched to a new hosting environment? If so:
    • Update the store URL in the file includes/storeconstants.asp, as mentioned above
    • Update the home page URL under Settings > Store Settings
    • Obtain a new SSL certificate for the new domain
    • Update your payment gateway (if application) as it often stores a “call back” URL that points back to your store
  • SSL Certificate: did you use a SSL certificate on your old server and did not have any checkout issues?
    • Make sure that the SSL certificate has been correctly moved to the new server. It may have to be re-issued by the SSL certificate issuing authority.
    • Assuming that your domain is "http://www.myWebStore.com", try loading the home page on the HTTPS protocol to make sure that it has been properly installed ("https://www.myWebStore.com"). This allows you to completely separate the issue from ProductCart.

If you are having an issue connecting to your payment gateway from the new server:

  • SSL certificate: see above.
    In most cases a payment gateway requires a valid SSL certificate installed on the Web server. If there are issues with your SSL certificate, the connection to the payment gateway might fail (e.g. your home page returns error when loaded on “https” in the FireFox browser).
  • Server Component: Some payment gateways require that a component be installed on the Web server. Go to Help > Troubleshooting Utility > Payment Gateway Components to find out which components are installed and whether there might be a problem in this area. If there is an issue, ask you Web host to help you install the Web server component required by your payment gateway (or if you have a dedicated server, contact the payment gateway directly for instructions on how to install the component on a dedicated server).
  • XML Parser: log into your Control Panel and go to Help > Troubleshooting Utility. Make sure that you have selected an XML parser supported by your new hosting environment. The version that was previously used might no longer be supported. Click on the Update button to refresh this setting.
  • Callback URL (domain name change): as mentioned above, if your domain name has changed, you will need to update any references to it anywhere, including what are often called “Call Back URLs”: one or more links to specific pages on your Web store used by payment gateways to communicate with your store. To find out, log into your payment gateway's administration area and look for any settings that include a link back to your store. Make sure that the link is still valid.

Problems obtaining shipping rates

See the XML Parser section above. That setting can affect the way ProductCart connects to shipping providers such as UPS or FedEx.


QR Code
QR Code Moving your ProductCart-powered Store (generated for current page)