AmazonS3
tcp/443
CloudFront
tcp/80
Open service 54.239.192.121:80 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 301 Moved Permanently Server: CloudFront Date: Fri, 23 Jan 2026 06:30:15 GMT Content-Type: text/html Content-Length: 167 Connection: close Location: https://thedustyspine.com/ X-Cache: Redirect from cloudfront Via: 1.1 2a656139082dc5343337bc64ea362630.cloudfront.net (CloudFront) X-Amz-Cf-Pop: MUC50-P5 Alt-Svc: h3=":443"; ma=86400 X-Amz-Cf-Id: ZiwT-PMZJVXBt-tf7YsrKePzzBa043Hd192NeXdQ8z1vcjxy2LqjeQ== Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>CloudFront</center> </body> </html>
Open service 54.239.192.144:443 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 13588
Connection: close
Date: Fri, 23 Jan 2026 06:29:46 GMT
Cache-Control: public, max-age=0, s-maxage=31536000
Server: AmazonS3
Accept-Ranges: bytes
ETag: "f2ed87d92bc5e6ea143c085a683f22d3"
Last-Modified: Fri, 23 Jan 2026 06:27:03 GMT
X-Cache: Hit from cloudfront
Via: 1.1 c2741d5ee2beeb4c9f22fb24f76708b6.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P5
Alt-Svc: h3=":443"; ma=86400
X-Amz-Cf-Id: FO5OpXLTxwqkS4rg78exnuRr9sYN6KSTWY6Q2NkZ7eyJkTRUg6xOXA==
Age: 30
Page title: The Dusty Spine
<!DOCTYPE html>
<html lang="en" dir="auto" data-theme="auto">
<head>
<meta name="generator" content="Hugo 0.148.2"><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>The Dusty Spine</title>
<meta name="description" content="A personal book review and reading tracker">
<meta name="author" content="">
<link rel="canonical" href="https://dustyspine.com/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.8772e12fffd67d3d498857ac497536ef262b193a6d4f4b5196e65f31b6380d9c.css" integrity="sha256-h3LhL//WfT1JiFesSXU27yYrGTptT0tRluZfMbY4DZw=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://dustyspine.com/favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="https://dustyspine.com/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://dustyspine.com/favicon-32x32.png">
<link rel="apple-touch-icon" href="https://dustyspine.com/apple-touch-icon.png">
<link rel="mask-icon" href="https://dustyspine.com/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://dustyspine.com/index.xml" title="rss">
<link rel="alternate" hreflang="en" href="https://dustyspine.com/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
color-scheme: dark;
}
.list {
background: var(--theme);
}
.toc {
background: var(--entry);
}
}
@media (prefers-color-scheme: light) {
.list::-webkit-scrollbar-thumb {
border-color: var(--code-bg);
}
}
</style>
</noscript>
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.querySelector("html").dataset.theme = 'dark';
} else if (localStorage.getItem("pref-theme") === "light") {
document.querySelector("html").dataset.theme = 'light';
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.querySelector("html").dataset.theme = 'dark';
} else {
document.querySelector("html").dataset.theme = 'light';
}
</script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap" rel="stylesheet">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-MDCVJFGLMC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-MDCVJFGLMC');
</script>
<meta property="og:url" content="https://dustyspine.com/">
<meta property="og:site_name" content="The Dusty Spine">
<meta property="og:title" content="The Dusty Spine">
<meta property="og:description" content="A personal book review and reading tracker">
<meta property="og:locale" content="en-us">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="The Dusty Spine">
<meta name="twitter:description" content="A personal book review and reading tracker">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
Open service 54.239.192.99:443 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 13588
Connection: close
Date: Fri, 23 Jan 2026 06:29:46 GMT
Cache-Control: public, max-age=0, s-maxage=31536000
Server: AmazonS3
Accept-Ranges: bytes
ETag: "f2ed87d92bc5e6ea143c085a683f22d3"
Last-Modified: Fri, 23 Jan 2026 06:27:03 GMT
X-Cache: Hit from cloudfront
Via: 1.1 00fe48bc72383ac135425bf0b3409486.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P5
Alt-Svc: h3=":443"; ma=86400
X-Amz-Cf-Id: OZm45J4HiD_8PxG3yXWSc3BqqX7-rmYQBHFbEl4Q4LJRZRWypAAcyA==
Age: 29
Page title: The Dusty Spine
<!DOCTYPE html>
<html lang="en" dir="auto" data-theme="auto">
<head>
<meta name="generator" content="Hugo 0.148.2"><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>The Dusty Spine</title>
<meta name="description" content="A personal book review and reading tracker">
<meta name="author" content="">
<link rel="canonical" href="https://dustyspine.com/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.8772e12fffd67d3d498857ac497536ef262b193a6d4f4b5196e65f31b6380d9c.css" integrity="sha256-h3LhL//WfT1JiFesSXU27yYrGTptT0tRluZfMbY4DZw=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://dustyspine.com/favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="https://dustyspine.com/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://dustyspine.com/favicon-32x32.png">
<link rel="apple-touch-icon" href="https://dustyspine.com/apple-touch-icon.png">
<link rel="mask-icon" href="https://dustyspine.com/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://dustyspine.com/index.xml" title="rss">
<link rel="alternate" hreflang="en" href="https://dustyspine.com/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
color-scheme: dark;
}
.list {
background: var(--theme);
}
.toc {
background: var(--entry);
}
}
@media (prefers-color-scheme: light) {
.list::-webkit-scrollbar-thumb {
border-color: var(--code-bg);
}
}
</style>
</noscript>
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.querySelector("html").dataset.theme = 'dark';
} else if (localStorage.getItem("pref-theme") === "light") {
document.querySelector("html").dataset.theme = 'light';
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.querySelector("html").dataset.theme = 'dark';
} else {
document.querySelector("html").dataset.theme = 'light';
}
</script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap" rel="stylesheet">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-MDCVJFGLMC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-MDCVJFGLMC');
</script>
<meta property="og:url" content="https://dustyspine.com/">
<meta property="og:site_name" content="The Dusty Spine">
<meta property="og:title" content="The Dusty Spine">
<meta property="og:description" content="A personal book review and reading tracker">
<meta property="og:locale" content="en-us">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="The Dusty Spine">
<meta name="twitter:description" content="A personal book review and reading tracker">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
Open service 54.239.192.99:80 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 301 Moved Permanently Server: CloudFront Date: Fri, 23 Jan 2026 06:30:15 GMT Content-Type: text/html Content-Length: 167 Connection: close Location: https://thedustyspine.com/ X-Cache: Redirect from cloudfront Via: 1.1 65bfa9839a30709dc259dc9134cf67b2.cloudfront.net (CloudFront) X-Amz-Cf-Pop: MUC50-P5 Alt-Svc: h3=":443"; ma=86400 X-Amz-Cf-Id: Bw7l1ZtCADrKozif3Rmlezq6ywZ9AKUXMbFeEWX3_3MmD74GXfzzVg== Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>CloudFront</center> </body> </html>
Open service 54.239.192.5:443 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 13588
Connection: close
Date: Fri, 23 Jan 2026 06:29:46 GMT
Cache-Control: public, max-age=0, s-maxage=31536000
Server: AmazonS3
Accept-Ranges: bytes
ETag: "f2ed87d92bc5e6ea143c085a683f22d3"
Last-Modified: Fri, 23 Jan 2026 06:27:03 GMT
X-Cache: Hit from cloudfront
Via: 1.1 62be04c57195b92a15c9e33c0bb32906.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P5
Alt-Svc: h3=":443"; ma=86400
X-Amz-Cf-Id: TBDrg0lXL6aD9nDpgWgbk21x7CxqBxFnJjI7yaKjTJ6yXRditgeg1Q==
Age: 29
Page title: The Dusty Spine
<!DOCTYPE html>
<html lang="en" dir="auto" data-theme="auto">
<head>
<meta name="generator" content="Hugo 0.148.2"><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>The Dusty Spine</title>
<meta name="description" content="A personal book review and reading tracker">
<meta name="author" content="">
<link rel="canonical" href="https://dustyspine.com/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.8772e12fffd67d3d498857ac497536ef262b193a6d4f4b5196e65f31b6380d9c.css" integrity="sha256-h3LhL//WfT1JiFesSXU27yYrGTptT0tRluZfMbY4DZw=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://dustyspine.com/favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="https://dustyspine.com/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://dustyspine.com/favicon-32x32.png">
<link rel="apple-touch-icon" href="https://dustyspine.com/apple-touch-icon.png">
<link rel="mask-icon" href="https://dustyspine.com/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://dustyspine.com/index.xml" title="rss">
<link rel="alternate" hreflang="en" href="https://dustyspine.com/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
color-scheme: dark;
}
.list {
background: var(--theme);
}
.toc {
background: var(--entry);
}
}
@media (prefers-color-scheme: light) {
.list::-webkit-scrollbar-thumb {
border-color: var(--code-bg);
}
}
</style>
</noscript>
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.querySelector("html").dataset.theme = 'dark';
} else if (localStorage.getItem("pref-theme") === "light") {
document.querySelector("html").dataset.theme = 'light';
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.querySelector("html").dataset.theme = 'dark';
} else {
document.querySelector("html").dataset.theme = 'light';
}
</script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap" rel="stylesheet">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-MDCVJFGLMC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-MDCVJFGLMC');
</script>
<meta property="og:url" content="https://dustyspine.com/">
<meta property="og:site_name" content="The Dusty Spine">
<meta property="og:title" content="The Dusty Spine">
<meta property="og:description" content="A personal book review and reading tracker">
<meta property="og:locale" content="en-us">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="The Dusty Spine">
<meta name="twitter:description" content="A personal book review and reading tracker">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
Open service 54.239.192.144:80 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 301 Moved Permanently Server: CloudFront Date: Fri, 23 Jan 2026 06:30:16 GMT Content-Type: text/html Content-Length: 167 Connection: close Location: https://thedustyspine.com/ X-Cache: Redirect from cloudfront Via: 1.1 fdac4411ecb7b0a694eea0076a271eb2.cloudfront.net (CloudFront) X-Amz-Cf-Pop: MUC50-P5 Alt-Svc: h3=":443"; ma=86400 X-Amz-Cf-Id: lNNLayB7xjIhX6ozHfhGDQ9BLSkyBR-c-Y_6kWApSxtw5ox-Euv2Cg== Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>CloudFront</center> </body> </html>
Open service 54.239.192.121:443 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 13588
Connection: close
Date: Fri, 23 Jan 2026 06:29:46 GMT
Cache-Control: public, max-age=0, s-maxage=31536000
Server: AmazonS3
Accept-Ranges: bytes
ETag: "f2ed87d92bc5e6ea143c085a683f22d3"
Last-Modified: Fri, 23 Jan 2026 06:27:03 GMT
X-Cache: Hit from cloudfront
Via: 1.1 258e5fe72bfca83e099f880853f68ab4.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: MUC50-P5
Alt-Svc: h3=":443"; ma=86400
X-Amz-Cf-Id: LK3XBED_vRIWMBwhdhbdeXwPH8b2ejb0PPJ8Tn4okokrgyCQWeaI-Q==
Age: 29
Page title: The Dusty Spine
<!DOCTYPE html>
<html lang="en" dir="auto" data-theme="auto">
<head>
<meta name="generator" content="Hugo 0.148.2"><meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="robots" content="index, follow">
<title>The Dusty Spine</title>
<meta name="description" content="A personal book review and reading tracker">
<meta name="author" content="">
<link rel="canonical" href="https://dustyspine.com/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.8772e12fffd67d3d498857ac497536ef262b193a6d4f4b5196e65f31b6380d9c.css" integrity="sha256-h3LhL//WfT1JiFesSXU27yYrGTptT0tRluZfMbY4DZw=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://dustyspine.com/favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="https://dustyspine.com/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://dustyspine.com/favicon-32x32.png">
<link rel="apple-touch-icon" href="https://dustyspine.com/apple-touch-icon.png">
<link rel="mask-icon" href="https://dustyspine.com/safari-pinned-tab.svg">
<meta name="theme-color" content="#2e2e33">
<meta name="msapplication-TileColor" content="#2e2e33">
<link rel="alternate" type="application/rss+xml" href="https://dustyspine.com/index.xml" title="rss">
<link rel="alternate" hreflang="en" href="https://dustyspine.com/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
color-scheme: dark;
}
.list {
background: var(--theme);
}
.toc {
background: var(--entry);
}
}
@media (prefers-color-scheme: light) {
.list::-webkit-scrollbar-thumb {
border-color: var(--code-bg);
}
}
</style>
</noscript>
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.querySelector("html").dataset.theme = 'dark';
} else if (localStorage.getItem("pref-theme") === "light") {
document.querySelector("html").dataset.theme = 'light';
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.querySelector("html").dataset.theme = 'dark';
} else {
document.querySelector("html").dataset.theme = 'light';
}
</script>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap" rel="stylesheet">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-MDCVJFGLMC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-MDCVJFGLMC');
</script>
<meta property="og:url" content="https://dustyspine.com/">
<meta property="og:site_name" content="The Dusty Spine">
<meta property="og:title" content="The Dusty Spine">
<meta property="og:description" content="A personal book review and reading tracker">
<meta property="og:locale" content="en-us">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="The Dusty Spine">
<meta name="twitter:description" content="A personal book review and reading tracker">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
Open service 54.239.192.5:80 · thedustyspine.com
2026-01-23 06:30
HTTP/1.1 301 Moved Permanently Server: CloudFront Date: Fri, 23 Jan 2026 06:30:15 GMT Content-Type: text/html Content-Length: 167 Connection: close Location: https://thedustyspine.com/ X-Cache: Redirect from cloudfront Via: 1.1 86f0f41c4d8083f2bfc3d1c3d9719bbc.cloudfront.net (CloudFront) X-Amz-Cf-Pop: MUC50-P5 Alt-Svc: h3=":443"; ma=86400 X-Amz-Cf-Id: 9E4YDMQ6eRHs7THI-hu1mdEMZs8DN4Vay7_I0RXF63KO2mgreTKN7g== Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>CloudFront</center> </body> </html>