https and URL canonical support from S3

The main disadvantage of hosting static websites from S3 is, there is no native https/SSL enabled for S3 website endpoints,it supports only http endpoint, to get around this, https/SSL termination can be enabled at cloudfront distribution for S3 website using ACM feature of AWS, so websites accessed using cloudfront ( Route 53 and cloudfront alias), will support http/https traffic. More details on this on enabling https for S3 using cloudfront can be found here

More …

Website SEO optimization

For self-managed websites, Optimization for SEO need to be considered for improving search engine rankings, I validated the current SEO rankings from multiple sites for this site, main fixes recommended by lots of SEO checkers are:

  1. HTML compressions for faster page loads
  2. Enable sitemap/robots.txt
  3. CSS Minification
  4. Social Media Check
  5. Key work Usage Test

Quantified score for this website before optimiation was 71/100 Before SEO

More …

Migration from Travis CI to AWS CodeBuild

Since this is a static website, conversion of markdown to html was performed by Jekyll engine whenever any commit to github repository is performed. Travis CI was very good to integrate with github for all build/deployment of this website.The website has dependency on mainly 3 services viz github for editing markdown,Travis CI for build/deployment, AWS for hosting/caching the website.

More …

Separating build projects for different branches

By Integrating GitHub repository with AWS CodeBuild, it monitors every change in the repository and builds and deploys the website for every change,this is not desirable, Hence need to separate the Build and Deployment in the repository to different CodeBuild Projects. I have configure 2 build projects in codebuild one for master branch and one for draft branch, with this github will have 2 webhooks in the repository, which can be customized for which events it should trigger.

More …

Cloud9 Environment Setup

AWS Cloud9 provides IDE in the Browser, which is very good usecase for users who are on the go or limited time developers.The main considerations for this setup is to have a pilot light environment, which can scale if the need requires with minimal costs.with average utilization of the ~0.5 hours/Daily for 20 days, 10 hours/Month

More …