6

I recently bough a domain with Namecheap with the intention to point it to an AWS S3 static site. My problem is that putting 'www.mydomain.dev' and 'mydomain.dev' into the address bar leads me to an infinite "Connecting.." loop in Chrome and Firefox.

What I tried:

  • Funnily enough wayback machine sees the website

  • I can curl the domain just fine with curl www.mydomain.dev and it returns the contents of index.html

  • I'm wondering if the fact that the .dev TLD is HSTS - which means it absolutely requires HTTPS to function has something to do with my problem. But I remember getting a warning once inside Chrome that this domain requires HSTS. Right now I'm not getting anything, just "connecting..."

  1. I created the bucket with static website enabled and changed the policy to allow everyone to read it's contents: enter image description here enter image description here enter image description here

The S3 endpoint is working fine

  1. Changed the Namecheap records to point to my AWS S3 static website endpoint (picture 1)

enter image description here enter image description here

I really have no idea what to do now. The DNS records are fine, S3 bucket is up - I can't think of anything else to check.

3
  • It works for me now. Sep 7, 2019 at 17:06
  • 1
    " I'm wondering if the fact that the .dev TLD is HSTS - which means it absolutely requires HTTPS to function has something to do with my problem." Most probably not. This just signals the browser to never attempt an HTTP connection on it. Also, 1) do not use nslookup, use dig, and 2) do not use ANY as query type, it does not do what you think it does, and it is now becoming obsolete to support on nameservers Sep 8, 2019 at 6:08
  • The first step for DNS configuration is any online troubleshooting tool but most probably either DNSViz or Zonemaster. Sep 8, 2019 at 6:09

1 Answer 1

4

The website started working but I completely changed my approach.

  • I ignored the problem that I can't connect through the domain name using HTTP.
  • Decided to just start setting up HTTPS for the site instead

I followed a tutorial that explained how to set up SSL for an AWS S3 static site using:

  • Amazon Route 53
  • Amazon CloudFront
  • Amazon Certificate Manger

Based on the tutorial I posted you need to:

  1. Create an e-mail redirect for your domain in Namecheap control panel - it must be something like admin@yourdomain or webmaster@yourdomain (required for Amazon Certificate Manager)

  2. Create a ACM SSL certificate (free) for your website. Use e-mail verification - the e-mail will be sent to the e-mail redirect you set

  3. Create a CloudFront distribution that redirects HTTP to HTTPS and link it to your S3 bucket address (the long AWS link)

  4. Use Route53 to route traffic to your cloudfront distribution. Your Route 53 hosted zone will assign you 4 DNS servers - you need to manually copy them into the Namecheap domain panel (first tab in your domain's Namecheap panel)

5
  • 2
    The reason this solves your problem is that the site won't work in browsers that support HSTS until you have HTTPS set up. Even though you were trying to connect via http, they were automatically upgrading those requests to https and being unable to connect. Other clients such as wget and the archive.org crawler may not implement HSTS and would be willing to connect to http. Oct 19, 2019 at 13:22
  • really helped me thank you!
    – Woodstock
    May 13, 2020 at 18:46
  • .dev is https only, the email forwarding trick is awesome
    – Woodstock
    May 13, 2020 at 18:57
  • This approach destroys your email redirect, though. You can't get email to your domain with this method.
    – Brettins
    Apr 18, 2021 at 18:10
  • It's been a while since I did this but you only need to set the redirect for a few minutes to get the certificate confirmation email. I assume you can change it back later
    – user103296
    Apr 18, 2021 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.