nopCommerce Website Migration Requirements and Information

 Created Date: 12/20/2020 12:00:00 AM |  User Level: Regular User |  Views: 1,435

For those that need to have their hosting on another server we are going to detail the process on GoDaddy. Any webhost will work.

Requirements

  • Windows Web Server - We recommend the latest Windows Server available as you will received the best security and reliability that Microsoft currently has to offer.
  • Microsoft SQL Server 2014 or higher - This is where all the core files and security reside. Business Yeti utilizes the latest version (2019 at the time of this writing). The file you receive from us will be compatible with the 2014 version and later.

Optional

These are optional as they are something we provide but your new provider may or may not have them in their default packages.

  • Enterprise Firewall - We use an F5 firewall but any firewall will do.
  • Unlimited bandwidth - If you have a lower traffic volume this may not apply but this is something we always have looked for so that we don't get any charges for going beyond what is offered.
  • Unlimited disk space - Disk space is critical as your business grows. Make certain you have enough disk space not only for your web site but any temporary files and operating system growth needs for optimal performance.
  • Content Delivery Network (CDN) - When someone downloads off of your website they can only download a specified number of files in a single push. If you have more files than a single push can be handled by the customers web browser (or web server) then multiple transmissions will happen. This is normal and to be expected. You can further improve performance by offloading files to a CDN. This allows you to download files from multiple sources. CDN's also offer a benefit by making files closer to your customers location.
  • Backups - Not a requirement but something that is important. Having a system that backs up your files is definitely a good thing. Make certain that your website files as wel as your database files are backed up.

Hosting

We chose GoDaddy hosting as the solution to document as most of our customers have their domain registrar information already on GoDaddy and this further simplifies the process while also making it so that you don't forget to pay your annual domain registrar fees (approximately $15/year).

We will be outlining two options. The first gives you the closest configuration to what Business Yeti's web servers provide. The second is the lowest cost tier we recommend.

Dedicated Server

Source - https://www.GoDaddy.com/hosting/windows-dedicated-server

All of the plans will work under the dedicated hosting. With Business Yeti you had the Value Plan for your hosting but the Economy Plan will work just as well. The difference between the two is that the Value Plan offers the following above the Economy Plan:

  • More Memory
  • More Hard Drive Space

By choosing the dedicated server option you will receive the best possible performance. Rather than hundreds of other websites on the same physical hardware the users will be reduced to a small handful of users.

Savings Opportunity - You can further save on pricing with a dedicated plan by paying for multiple years at a time rather than going month-to-month.

Non-Dedicated Hosting or Shared Hosting

Source - https://www.GoDaddy.com/hosting/windows-hosting

Often saving money is a critical decision. Looking at shared hosting provides a great way to save money. We recommend the Ultimate Plan they provide as it has the largest database size along with the easiest upgrade if you grow beyond what the shared solution provides.

Savings Opportunity - You can further save on pricing with a dedicated plan by paying for multiple years at a time rather than going month-to-month.

Transition Steps

To transition we will make a backup at the last possible second of your website files and database as any changes to your website after this time won't be in the backup. Below is what we provide as a whole:

  • Backup (Database) - The heart of your website and your CMS. This is the Microsoft SQL Server backup and will be a single file. Summary:
    • .ZIP file of the Microsoft SQL Server .bak file. This is compressed into a .ZIP as it saves space for the download.
    • You will unZip the .zip file which will range from 1 megabyte to several terabytes depending upon the amount of data your website has acquired during it's active time.
    • You will restore the database to your system. The standard naming convention used is clientDATABASENAME and you can use your own naming convention.
      • Note 1: We do recommend the database be fully encrypted so that it only runs on your server so that if it were accidentally acquired that the data is still safe. This is not a requirement but a recommendation.
      • Note 2: All of the sensitive database columns are already encrypted.
    • You will now create a SQL Server user with a password.
      • Within SQL Server Management Studio, or the method you used to restore the database expand the section labeled Security.
      • Right click on Logins and click on New Login
      • Enter in the login name
      • Set the security to SQL Server Authentication
        • Note: You can use Windows Authentication if you wish.
      • Enter the Password.
        • Note 1: We strongly recommend that this password be 30+ characters long and completely random to ensure the highest level of protection.
        • Note 2: We strongly recommend that the password not be used anywhere else in any system to further enhance your websites security.
      • Enter the Confirm password.
      • Uncheck the Enforce password expiration as having this checked can make your website go offline if the password expires.
      • Uncheck the User must change password at next login as this will make it so the website doesn't work.
      • Change the Default database to the database that you just restored.
      • Change the Default language to English us_english. This isn't required but recommended so future administrators know what the default language is.
      • Press the OK button.
    • Next we will associate the newly created user with the newly restored database.
      • Expand your database by clicking the + to the left of the database.
      • Expand your section called Security by clicking the + to the left of the database.
      • Expand your section called Users by clicking the + to the left of the database. Only the following users should be listed right now with the other(s) removed. There will be a user with the original name of the user that was set to the database. Do not delete these users as the SQL Server uses them for backup and system maintenance:
        • dbo
        • guest (should have a red x on the icon as well)
        • INFORMATION_SCHEMA (should have a red x on the icon as well)
        • sys (should have a red x on the icon as well)
      • In the General (Default) section do the following:
        • Right-click on Users and choose New User...
        • Enter the User name. This is the username you just created.
        • Enter in the Login name. This is the username you just created.
        • For the Default schema enter in dbo.
      • In the Membership section click on the following as this will limit the user to the minimum requirements and better protect the SQL Server:
        • db_datareader
        • db_datawriter
      • Click on the OK button.
  • Backup (Website) - This is the core files needed for your website and will contain the content management system (CMS) and many of the images. Summary:
    • Some images are usually stored within the database.
    • .ZIP file of everything in the website at the time of backup.
    • When you export the .ZIP for the website there is a folder called App_Data. This folder is where you will set the connection string for the website to the SQL Server.
      • Note: The SQL Server needs to be setup first or the website will not have a database to connect to.
    • There is a file called dataSettings.json that you will edit. In this file are the following items that you will need to change:
      • Replace SQLSERVER with the name of your SQL Server. This can be either a DNS name or an IP Address.
      • Replace SQLDATABASE with name of the SQL Server database.
      • Replace SQLUSERNAME with the username that is associated with the SQL Server user.
        • Note: This user should not have SA (System Administrator) writes as that is a potential security risk to your SQL Server.
      • Replace SQLPASSWORD with the password for the SQL Server user assigned to this database.
        • Note 1: We strongly recommend that this password be 30+ characters long and completely random to ensure the highest level of protection.
        • Note 2: We strongly recommend that the password not be used anywhere else in any system to further enhance your websites security.
  • Dropbox - All of your files will be shared from a Dropbox account to your primary email address. They will reside on here for up to 30 days or when you state you no longer need them and then be permanently removed from the server.

Additional Points to Think Of

  • PCI Compliance: With any eCommerce site it is recommended that it is tested for PCI compliance at a minimum of annually. We recommend more often but know that for PCI compliance you need annual tests.
  • Server Monitoring: Monitoring your server that it is operational is another key aspect to watch out for. On top of making certain the server is operational monitoring certain pages is important. By monitoring pages for changes/updates you can make certain that your site is always available.

Additional Support

Once the files are backed up and stored on the Dropbox server we will cancel all billing of your account so that you no longer receive any bills from us. We are always available to assist you and will just be billed at our current hourly rate in 15-minute increments and billed each day to your credit card you have on file. If you do not have a credit card on file you will need one for us to assist you.