Thomas Serre

Thomas Serre

Machine and Biological Vision • Computational Neuroscience • AI • NeuroAI • XAI

Brown University
Providence, RI 02912



Lab website
Lab github
Brown profile
CV

Custom Domain Setup for thomas-serre.com

Date: November 11, 2025

Changes Made

Your personal website has been configured to use thomas-serre.com as the canonical URL instead of tserre.github.io.

Files Updated

  1. _config.yml - Changed base URL from https://tserre.github.io to https://thomas-serre.com
  2. index.html - Updated Open Graph and JSON-LD structured data URLs
  3. CNAME - Created new file to tell GitHub Pages to serve from thomas-serre.com
  4. Canonical tags - Automatically updated via Jekyll’s site.url variable in layouts
  5. Sitemap - Automatically updated via Jekyll’s site.url variable

How It Works

Canonical Tags

The _layouts/default.html file uses:

<link rel="canonical" href="https://thomas-serre.com/CUSTOM_DOMAIN_SETUP.html">

This means all pages will now have canonical tags like:

Sitemap

The sitemap.xml file uses:

<loc>https://thomas-serre.com/CUSTOM_DOMAIN_SETUP.html</loc>

All URLs in the sitemap will now use https://thomas-serre.com/ as the base.

CNAME File

The CNAME file tells GitHub Pages to:

  1. Serve your site from thomas-serre.com instead of tserre.github.io
  2. Automatically redirect tserre.github.io → thomas-serre.com
  3. Handle SSL/HTTPS certificates for the custom domain

DNS Configuration Required

For this to work, you need to configure your DNS settings at your domain registrar (where you bought thomas-serre.com):

Option 1: Using an A Record (Apex Domain)

Add the following A records to point to GitHub Pages:

Type: A
Name: @ (or thomas-serre.com)
Value: 185.199.108.153
TTL: 3600

Type: A
Name: @ (or thomas-serre.com)
Value: 185.199.109.153
TTL: 3600

Type: A
Name: @ (or thomas-serre.com)
Value: 185.199.110.153
TTL: 3600

Type: A
Name: @ (or thomas-serre.com)
Value: 185.199.111.153
TTL: 3600

Option 2: Using a CNAME Record (with www subdomain)

If you prefer using www.thomas-serre.com:

Type: CNAME
Name: www
Value: tserre.github.io
TTL: 3600

Then add a redirect from apex domain to www, or use the A records above for the apex domain.

Add both the A records for thomas-serre.com AND a CNAME for www.thomas-serre.com:

# For thomas-serre.com (apex domain)
Type: A records (see Option 1 above)

# For www.thomas-serre.com
Type: CNAME
Name: www
Value: tserre.github.io
TTL: 3600

Deployment Steps

1. Push Changes to GitHub

The changes have been made locally. Push them:

cd /Users/tserre/Projects/tserre.github.io
git add _config.yml index.html CNAME CUSTOM_DOMAIN_SETUP.md
git commit -m "Configure custom domain thomas-serre.com"
git push origin main

2. Configure DNS at Your Domain Registrar

  1. Log in to your domain registrar (e.g., GoDaddy, Namecheap, Google Domains, etc.)
  2. Navigate to DNS settings for thomas-serre.com
  3. Add the A records listed above
  4. Optionally add the CNAME record for www
  5. Save changes (DNS propagation can take 24-48 hours)

3. Configure GitHub Pages Settings

  1. Go to your GitHub repository: https://github.com/tserre/tserre.github.io
  2. Navigate to SettingsPages
  3. Under “Custom domain”, enter: thomas-serre.com
  4. Click Save
  5. Check “Enforce HTTPS” (may need to wait a few minutes after DNS propagates)

4. Verify Setup

After DNS propagates (usually within a few hours):

  1. Visit https://thomas-serre.com - should show your site
  2. Visit https://tserre.github.io - should redirect to thomas-serre.com
  3. View source and check for canonical tag:
    <link rel="canonical" href="https://thomas-serre.com/">
    

5. Submit to Google Search Console

  1. Go to Google Search Console
  2. Add thomas-serre.com as a new property
  3. Verify ownership (use the HTML file or meta tag method)
  4. Submit the sitemap: https://thomas-serre.com/sitemap.xml
  5. (Optional) Set up a 301 redirect from the old property to the new one

What This Accomplishes

SEO Benefits

Single Canonical URL: Google will index thomas-serre.com, not tserre.github.io
Brand Consistency: Your personal domain appears in search results
Link Equity: All backlinks consolidate to your branded domain
Professional Appearance: thomas-serre.com looks more professional than github.io

How It Works

  1. Users visit: thomas-serre.com or tserre.github.io
  2. GitHub Pages: Serves content from your repo
  3. Automatic redirect: tserre.github.io → thomas-serre.com
  4. Canonical tags: Tell Google thomas-serre.com is the “real” URL
  5. Search engines: Index and rank thomas-serre.com

Don’t worry about existing links! GitHub Pages automatically redirects:

Troubleshooting

DNS Not Resolving

GitHub Pages Not Loading Custom Domain

HTTPS Certificate Error

Canonical Tags Not Updating

Technical Notes

Jekyll Site Variables

The site uses these variables throughout:

CNAME File

The CNAME file must:

GitHub Pages IP Addresses

Current GitHub Pages IPs (as of 2025):

These may change in the future. Check GitHub’s documentation for updates.

Summary

Website configured to use thomas-serre.com as canonical URL
CNAME file created for GitHub Pages custom domain
Canonical tags updated via Jekyll templates
Sitemap updated to use new domain
Structured data updated with new URL

Next: Push changes to GitHub, configure DNS, and enable custom domain in GitHub Pages settings.