How To Make Moving To A New Webhost A Stress-Free Experience

Moving to a new web host, also known as ‘migrating,’ can be stressful regardless of how big your site is. The potential for lost or corrupt files is ever present. The bigger your site is, the harder it is to thoroughly test it before letting go of your old hosting account. You can’t hang on to your old account forever.

If you’ve never moved a website before, it’s important to know that a smooth migration requires more than transferring files. Careful planning is necessary to ensure the preservation of databases, backups, email accounts, cron jobs, and directory structures.

If all you have is a single directory with a few files, a quick transfer is all you need. When you have a large number of pages and databases to move, planning is essential.

To handle the intricacies of moving to a new host, here are some tips to make the process stress-free.

Back up your website – twice

It seems unlikely, but what would you do if your website backup contained corrupt files and you couldn’t get the originals because you already canceled your account? What if your .zip files are corrupt? What if your account is deleted in a power surge overnight? It happens more often than you think. That’s why we offer our customers disaster recovery services, but not every host does.

Backing up your website is essential regardless of how you’re migrating your site. For instance, you should backup your website even when your web host is using the cPanel to cPanel transfer.

Create a step-by-step written plan

Having a written plan with tasks you can check off is essential for a smooth website migration. There’s always a chance you’ll forget something, but you’re better off with a written list.

Rather than relying on a random checklist from the internet, take the time to write down, on paper, every step you need to take to complete your transfer. Your list should be a customized checklist. Internet checklists are an excellent place to start, so use them to your advantage but don’t rely on them as your only list.

For example, you might want to change your directory structure on the new server. You might want to wait until you’ve uploaded everything, or you may decide to manually create a new structure and upload files as you go. This process should be part of your step-by-step plan.

Your plan should include everything, even the small tasks like designating a “catch-all” for unrouted email.

Document the details

In addition to having a well-documented plan, you need to document your account details. Make sure to write down everything you need to recreate on your new server. For example, you’ll need to recreate all email addresses, cron jobs, and upload all databases. Databases can be especially tricky – document them thoroughly.

When you download all of your databases, you don’t automatically get a list of installation URLs. If you used one-click installation software in the beginning, you wouldn’t be able to identify your databases by name because you didn’t name them. You have to create a list for reference.

For instance, did you create multiple installations of WordPress? Unless you manually installed WordPress and chose a custom prefix, your databases will have the same prefix (wp_) followed by a number. This makes installations hard to tell apart.

To identify your WordPress databases, go into phpMyAdmin. Click on each database name in the list and navigate to the ‘options’ table. You’ll find the installation URL listed there.

For other automatically installed applications, you probably aren’t aware of the database prefix, either. You can find this information by using phpMyAdmin.

If you have more than one SQL database, document what domain and application each database belongs to, as well as the database usernames and passwords.

Check for cron jobs

Depending on the software you’ve installed, you might have cron jobs running that you didn’t create. Some applications automatically set up cron jobs and if you don’t replicate them in your new hosting environment, your website functionality will suffer.

Don’t update your nameservers too early

Update your nameservers only after verifying all files have been successfully transferred and you’ve set up all email accounts. Changing nameservers may make your email stop working temporarily, which means you won’t be able to request lost passwords if needed.

Without updated nameservers, you’ll need to rely on your new hosting account’s IP address to view your site. If you’re running WordPress, you might need to temporarily change the URL in your database to the IP address to navigate the site to verify it’s working. WordPress now uses relative URLs, so unless you change the URL in the database to your IP address, you can only navigate so far. Alternately, you can edit your HOSTS file to force your computer to look to the new server for the website.

Know your way around FTP/SFTP

You can edit virtually any file through SFTP, which comes in handy when you’re editing data through an admin panel and get locked out when you save your changes.

Practice using phpMyAdmin

As long as you have access to phpMyAdmin or something similar provided by your web host, you can change database names, usernames, passwords, and email addresses. This gives you guaranteed access to your site even if you lock yourself out of your content management system’s admin panel, which might happen during a migration.

For instance, say you’re using WordPress, and you’ve migrated all files and databases successfully. When you try to access your wp-admin page, you get a 404. Chances are, you haven’t changed the URL in the WordPress installation to point to the new domain. This needs to be changed in two places in the ‘options’ table. Normally, you’d change this while logged into your WordPress backend, but without access, you need to change it through phpMyAdmin.

Practice MySQL dumps and imports

If you’ve never transferred a database before, you’re in for a learning curve. Before transferring your actual website, install test software that uses a database and practice moving that over first. To learn how it’s done, follow this guide for migrating a SQL database between two servers.

Ask your new web host to initiate the transfer for you

Professional web hosts know how to transfer files and databases quickly and efficiently. If the process of migration seems too complicated, or the value of your site is too great to risk downtime or corruption, give it up to the pros.

Make sure your new host will meet your needs

Does your new host meet all of your needs? Would they customize a plan just for you? When you’re ready to experience web hosting at its best, contact Skylands Networks today for boutique website hosting services tailored to your specific business needs.

Why Your Website Must Be SSL Compliant

As internet technology evolves, website best practices transform from courtesies to mandatory elements. For example, firewalls were once used only by tech-savvy enthusiasts. Today, most people wouldn’t dream of using a computer without a firewall. With cybercrime on the rise, providing an encrypted connection has become one of many security elements visitors have come to expect.

Website security is a big deal. Every bit of data transferred across a network is susceptible to being intercepted mid-transfer. While encryption can’t prevent hackers from stealing data, it does ensure stolen data remains unreadable. Encryption uses a complex algorithm to scramble data streaming across a network, making it unreadable by anyone without a decryption key.

Secure Socket Layer encryption, or SSL, is a high-level encryption standard that uses both asymmetric and symmetric keys to authenticate data and secure it. SSL uses a public key from the website server and a private key from the user’s browser. Since both keys are needed, an SSL certificate is a package of information that delivers a public key to the user.

Once a secure connection is made, all data transfers are constantly encrypted in real time by something called a cipher. This is where the word “decipher” comes from. When you decipher data, you convert it into normal language.

When an SSL encrypted connection is terminated, so is the private encryption key; a new key is generated for each connection. To learn about SSL encryption in-depth, check out this Beginner’s Guide to SSL.

Website encryption has been standard for a while, but some website owners have been dragging their feet. If you haven’t given serious consideration to securing your website with SSL, here’s why you can’t put it off any longer:

SSL protects your visitors from identity theft

You care about your visitors – they’re the reason you’re in business. Protecting their data from hackers should be your number one priority.

Chances are, visitors submit some kind of information through a web form on your website. It could be a simple signup form, an account login page, or a complete e-commerce transaction requiring credit card information. All of this data is susceptible to theft and should, therefore, be encrypted.

It makes sense to encrypt an e-commerce website that handles credit card information, but what if you don’t sell anything on your website? What if you run a blog, and only collect email addresses from your followers? Even if your visitors only submit their name and email address, that transmission needs to be encrypted because hackers piece together information from various sources to eventually steal someone’s identity.

All visitor data needs to be protected

Any website with user accounts should use SSL encryption to prevent account information from being stolen. Stolen account information is how cybercriminals obtain enough information for identity theft.

Against good advice, many people reuse passwords for multiple accounts. Once a hacker has an email address and a password, they’ll use that password to gain access to other accounts they can find. Most user accounts have a personal profile where people provide links to their other accounts; it’s all low hanging fruit for the cybercriminal. If your website visitor uses the same password for their Twitter, Facebook, or Instagram accounts, leaving their data unencrypted could cost them more than a compromised account.

Protecting your visitors’ data is no longer the only reason to use SSL. Browsers are starting to monitor and inform visitors of the presence of SSL encryption, and Google officially made SSL encryption a search ranking signal.

Using SSL makes you look better and rank better on Google

On August 6, 2014, Google reinforced its commitment to making the internet secure by informing webmasters everywhere that the presence of SSL/TLS encryption is officially a lightweight search signal. At the time, Google said the signal would affect fewer than 1% of global queries, but they might strengthen it in the future to encourage website owners to switch to HTTPS.

Browsers are telling visitors if your site is secure

A securely encrypted website connection between a client (visitor) and the server (website) is what enables the use of the HTTPS protocol. Google not only gives more weight to websites using HTTPS, but its popular browser, Chrome, warns visitors when a website is not using HTTPS.

In September of 2016, Emily Schechter from Chrome’s security team published an announcement that Chrome was going to start labeling HTTP connections non-secure. A small information icon (i) with the words “not secure” are displayed to the left of the webpage URL in the address bar. As of January 2017, all HTTP pages, including ones that collect passwords or credit card information, are being marked as non-secure. In the future, Schechter says the HTTP security warning will be a red triangle with an exclamation point in the middle, currently used for broken HTTPS.

Firefox implemented a similar strategy to warn of password security vulnerabilities. When login credentials are requested over HTTP, Firefox gives a warning to the user by placing a red slash through a lock symbol in the URL bar. According to the Firefox security team, each page is checked against the W3C’s Secure Contexts Specification to determine whether it’s secure.

Firefox and Chrome are popular browsers, and these warnings may not look sinister today, but given time, they will evolve, and it’s only a matter of time before visitors start bouncing from unsecured websites.

SSL protects public Wi-Fi users unaware of potential threats

A secure browser connection prevents Man-In-The-Middle (MITM) attacks, which are fairly common, especially on public Wi-Fi.

Unfortunately, consumers don’t realize the urgency of securing their own data over public Wi-Fi. Studies have shown that over 60% of Wi-Fi users believe their personal information is protected when using public internet. About 50% don’t know they’re responsible for securing their own data, with 36% believing it’s either the website owner or Wi-Fi providers job.

Although everyone should do their part to protect their data, at the end of the day, the website owner will take the legal blame if data gets stolen. Even when a consumer is careless with data security, they can sue a business for any data breach that caused them provable harm.

Get hosting from a provider that offers SSL

Your visitors depend on you to protect their data. You might not have SSL enabled, or you might find it difficult to implement site-wide. At Skylands, we offer SSL encryption and handle the setup for you.

Contact us today to find out how our fully managed boutique hosting can create a secure website connection for your visitors.

Tips For Building Your Custom PrestaShop Theme

Choosing PrestaShop as a platform for your e-commerce website was a great move. It’s easy for you and your customers to use, supports optimized page speed for SEO, and was professionally designed to handle e-commerce.

PrestaShop installations come with a standard theme you can customize to a degree without knowing any programming, but sometimes that’s not enough. If you’re searching for a fully custom theme, you’ll need a professional developer.

Unlike WordPress, there aren’t as many theme developers for PrestaShop, so it’s difficult to find an abundance of pre-made themes on template websites. You’ll find a few on Template Monster, but if those don’t work, here’s how to get a custom theme that fits your needs:

Know your limitations if you’re a DIY theme developer

Creating a custom PrestaShop theme requires more than cut and paste skills. With some platforms, you can get away with copying files, replacing images, and inserting sections of code. PrestaShop requires a bit more knowledge.

For example, other platforms support mixing PHP with HTML, but PrestaShop uses Smarty tags instead. PrestaShop’s 3-tier architecture makes it easier for graphic designers and HTML integrators to work solely within the /themes folder without having to work around PHP code. Even if you’re new to PrestaShop, if you’ve ever locked yourself out of your admin panel due to a PHP syntax error, you already know the value of Smarty templates.

Although the Smarty 3 template engine was designed to help developers build themes efficiently with little technical knowledge, it’s not something a tech newbie can understand quickly. For example, with other platforms, a beginner can copy and paste snippets of HTML, CSS, PHP, and Javascript in the correct place by following simple instructions. With PrestaShop, template files (.tpl) control the design, and pasting HTML in the wrong place can have dire consequences.

If you’ve got a brilliant idea for a theme but don’t have the experience necessary to bring it to life using best practices, hire a professional theme developer. Cut-and-paste HTML/CSS experience isn’t enough to make a PrestaShop template turn out well.

Learn how to use Smarty templates

If you want to build a PrestaShop theme, but haven’t worked with Smarty templates, it’s worth investing time to learn the system. For the official walkthrough, check out this guide, and don’t be shy about joining the forum for help when you get stuck. Once you learn how to use the Smarty template engine, creating a theme will be easier.

Adhere to best practices especially when you’re new to PrestaShop

Best practices exist for a reason. While there are often multiple ways to accomplish the same task, not all methods will produce a seamless result. When you’re not an experienced developer, you’re probably used to using workarounds, some of which have yet to catch you off guard. You may not notice the effects for days, weeks, or months, but when something falls apart, you’ll wish you had done things differently.

For example, if you’re familiar with WordPress, you know it’s possible to use functions.php for just about anything, including adding Google Analytics code. The problem is, functions.php should only be used to modify theme-related functions. Updates will wipe out your custom code and break your site.

Knowing your way around PHP files isn’t the same as understanding how it’s being used within the context of a platform. Like WordPress, PrestaShop also uses PHP and while core files can be modified, doing so goes against best practices.

This developer points out the importance of creating or modifying a theme correctly from the start. He was hired by a client to fix the mistakes of a former development team. The team knew HTML and CSS but didn’t understand PrestaShop. They modified elements in a way that would have forced the shop owner to manually compare and copy over the new code to core files for every update. The developer also mentions several ways to modify modules, HTML, and CSS without interrupting the upgrade process.

It’s better to build your code into modules so you don’t lose your modifications when you update PrestaShop. Also, SQL queries should never be made from a PHP controller (a .php file in the root directory). Create new methods for existing PrestaShop classes if needed. If you don’t understand what that means, your best option is to hire a professional developer.

Understand PrestaShop’s theme development fundamentals

Unless you’re a PrestaShop pro, you’ll want to review the official theme development documentation before making any changes. PrestaShop uses several things you may not be familiar with: Smarty templates, Bootstrap, Sass, and Compass.

If you’re unfamiliar with Bootstrap, you’ll need to familiarize yourself with it to get the best results with your theme. Bootstrap is an integral part of PrestaShop. Creating a new back office requires using Bootstrap, but creating a new front office doesn’t. Bootstrap is well integrated into PrestaShop, so not using it (even for a front office) means missing out on functionality.

Tips for outsourcing theme development to a pro

When you’re not ready to dive into theme development, hiring a pro is the right move. Search for templates you like, and be prepared to discuss those elements with your developer.

When viewing other templates for reference, be sure to look for more than aesthetics. Pay attention to what side the widgets are on, how the drop-down navigation functions, and where the layout has designated spots for ads.

Most of all, don’t expect your theme to be perfect. A developer does their best to capture your vision, but there will always be aspects of the design that aren’t perfect. Through rounds of development you can get close, but be prepared to accept some limitations.

While your new theme is being developed, don’t forget to choose a host. With an e-commerce shop, you need a host to facilitate secure transactions using SSL, and proper load balancing to make sure your site doesn’t crash. Contact Skylands today for boutique hosting tailored to meet your specific business needs.

8 UX Fixes To Reduce Abandoned Magento Shopping Carts

You’ve created a beautiful eCommerce website with a brilliant product your visitors fall in love with. You’ve done everything right – your sales copy is well written and convincing, and it encourages visitors to add products to their cart. However, when you look at your stats, you’ve got a high rate of abandoned shopping carts. Why? What went wrong?

If this is your experience, you’re not alone. Thousands of eCommerce websites experience a sharp drop-off during the first step of the checkout process. According to KissMetrics, this drop-off is caused by disconnects in the user experience.

Here’s what you can do to improve your user experience and encourage customers to complete their purchase:

1. Minimize clickable options (like full navigation)

Consistent navigation throughout all your web pages provides a seamless user experience. However, as with sales pages, full navigation becomes a distraction during the checkout process.

Your visitors may not be looking for a way out, but when they notice clickable options, they may want to explore. When a visitor leaves the checkout process to wander around, they’re more likely to abandon your website entirely.

Unfortunately, even when a wandering visitor comes back later to complete their purchase, their exit still registers as an abandoned shopping cart.

The checkout process should support the visitor’s commitment to buy from start to finish. It should keep the visitor engaged in the checkout process.

The process should keep your visitors moving toward entering their payment information without any distractions along the way. Any options to make changes (like adding items or changing quantities) should be made possible within the shopping cart, so there’s no reason to provide full site navigation during the checkout process.

2. Ask for payment information in the right order

If you haven’t provided the customer with shipping options and a grand total, it’s not time to ask for their billing information. Customers want to know their total before entering their billing address and credit card number. You can write copy that informs visitors their card won’t be billed until they finalize their order on the next page, but they’re still going to be nervous about hitting that “next” button.

3. Use a progress indicator

How many steps are in your checkout process? Three? Ten? Even if your process is short, it’s a good idea to add a progress indicator to the top of the page. Visitors like to know where they are in the checkout process, so they know there’s an end in sight.

Your shopping cart theme probably comes with a progress indicator already, but if not, it’s easy to add one. To add a progress indicator, you need a set of graphics that represent each step, with a transparent background. Any graphic designer with basic skills can create these for you. For example, if your checkout process has three steps, you need a set of three images – one for each step.

One thing a progress indicator can’t do is make an exceptionally long checkout process seem shorter. If your checkout process has more than five steps, it’s probably too long.

To shorten the process, see if you can combine steps. For example, if a customer needs to submit their billing address in one step, then submit their credit card information in the next step, see if it’s possible to combine those into one. What the customer inputs won’t change, but the perception of one less step will make them happy.

4. Allow guest checkouts

The checkout process is an opportunity to gather email addresses from your visitors, but don’t force everyone to create an account to complete their purchase. Most people have more accounts than they can even remember. The need to sign up for one more user account can make a visitor bounce and buy from a competitor.

The Baymard Institute discovered 37% of people abandon a shopping cart when the site asks them to create an account. Forcing users to create an account is a barrier that prevents conversions.

If you’re worried about not capturing email addresses, there’s little to be concerned about. Most email marketing systems – especially high-end systems like Infusionsoft – can be integrated to grab email addresses from the checkout process.

5.  Design your shopping cart to match your website

Consistent design between your website and your Magento shopping cart goes a long way to support conversions. Consistency in design tells people they’re in the right place. Some people hire a professional design and development team, so the shopping cart looks exactly like their website.

Thankfully, it’s easy to customize a Magento shopping cart design, even if you can’t hire a professional development team. You can customize some elements yourself by logging into your shopping cart and clicking on “settings.” From there, you want to click the link titled “design setting.” Here, you can change the default colors and images and add a custom background or header graphic.

6.  Present upsells sparingly

An upsell is perceived as a step in the checkout process. If your checkout process is short, upsells will make it appear longer. One upsell screen might be appropriate; however, two will make visitors bounce. Screens asking visitors if they’re “sure” they don’t want the upsell they just rejected are even worse.

7.  Make sure dynamically displayed currency is correct

When you want to display prices dynamically according to the visitor’s geographical location, it’s important to know for certain the currency displayed is correct. Many countries use the US dollar as a standard form of currency, and yet some currency plugins display the country’s old, antiquated form of currency instead.

Visitors will notice this mistake, and if they can’t select their preferred currency, they’ll bounce.

For example, some currency plugins are programmed to display prices in the Cambodian Riel. If you’ve never been to Cambodia, this seems logical. However, the US dollar is Cambodia’s second official currency. ATM machines dispense both currencies, but most residents rely on the US dollar for everyday purchases. They’re not used to seeing small purchases displayed in Riel.

If your currency plugin allows you to assign currencies to particular regions, this is an easy fix.

Remember, the US dollar is the most widely used currency in the world, and people are used to seeing prices in USD. If you’re not certain currencies are correct, it’s better to leave your prices in USD.

8.  Speed up your page load time with LiteMage

Speed is everything. If your website loads slowly, visitors will bounce.

If your eCommerce website is doing well, but your Magento website is loading slowly, you probably need a load balancer. Magento is a wonderful CMS, though it can be demanding of server resources resulting in site performance issues that can cost you conversions.

At Skylands Networks, we use LiteMage to help Magento stores run up to 5x faster, reducing server load and increasing site performance. Contact us today to find out how we can create a custom solution for your eCommerce website.

Why Load Balancing Is Vital With eCommerce Platforms

Launching an eCommerce website requires investing a significant amount of time setting up and managing IT infrastructure. To prevent unnecessary downtime, you need to consider things like disaster recovery, server security, and website security.

Traffic management also plays a vital role in keeping your website online. You need to generate traffic to make sales, but when you’re unprepared, too much traffic can cause your website to go offline.

Heavy traffic can impede your conversions

Each visitor that comes to your website is considered a single connection, but will generate multiple requests per page load. It takes resources to support connections; your website can only handle a finite number of connections at once.

Servers have a finite capacity for resources like memory, processing power, and bandwidth. If the demand for resources is greater than what your servers can handle, your website will either slow down or crash.

Your conversion rates are directly influenced by the amount of time it takes for your pages to load. According to a recent Google study, 53% of mobile users bounce when a page takes more than three seconds to load. You can’t afford to have slow loading pages killing off your profits.

Load balancing helps you handle heavy traffic

Heavy traffic can hit at any time, putting stress on your server’s resources and causing your website to go down. When your website goes down, you lose sales, and your brand perception may suffer.

Holidays, promotional periods, and new product launches can cause a surge in traffic. You need a strategy for managing server resources during these periods of heavy traffic.

The solution is load balancing, and it’s achieved with a special device called a “load balancer.” A load balancer distributes your visitors’ requests across a number of servers.

Load balancing is your best defense against a server crash due to heavy traffic. Load balancing is designed to optimize the use of server resources, minimize response time, and prevent overload on any single resource.

 Load balancing for reliability

 Your website or online service can only generate revenue when it’s actually online. Crashes or slowdowns due to hardware failure or sudden spikes in traffic come with a real cost, both to your income and your reputation.

Load balancing not only distributes traffic evenly across multiple servers, it eliminates any single point of failure. If any single server or load balancer happens to fail the system’s redundancy keeps the site online and running smoothly while the hosting team replaces the failed device.

 

How Load Balancing Works

 

There are various algorithms available which can determine how the load balancer distributes traffic. Your hosting provider can advise you on the best configuration for your specific setup.

Why choosing a dedicated hosting solution is ideal

 Shared hosting accounts are cheap – sometimes less than five bucks a month. You can install your own platform like WordPress or Magento in minutes. It sounds like a great deal. However, shared hosting isn’t a good option for eCommerce websites. Dedicated hosted solutions like the ones we offer are ideal because they give you full control over your dedicated resources.

Don’t be lured in by cheap shared hosting – it’s like moving in with unpredictable roommates who use all the hot water and hog the WiFi. Sharing resources puts you at the mercy of their demands all the time.

Your load balancing needs are unique – we can help

Basic load balancers can only do so much by monitoring for HTTP status code or text match. Skylands engineers are trained to create custom scripts to monitor your eCommerce website and balance visitors based on what defines up/down for your particular application.

We also offer LiteMage for Magento so all of your web servers can share a single cache. LiteMage improves warm-up time and reduces server load by eliminating the need to duplicate cache-loading efforts. In fact, our high performance caching serves cached content up to two times faster than other solutions.

If you’re a small business, the time will come when you’ll need to scale your applications beyond one server to improve speed and reliability. You don’t want to be caught off guard when your business takes off. Our flexible load balancing algorithms are activated on-demand and automatically scale to meet your seasonal and temporary traffic spikes.

We offer multiple hosting options for Magento websites, all of which offer load balancing. Contact us today to find out how we can help you with your eCommerce needs.