The way this is generated is Twitter/iMessage scrapes the HTML of the url you are sharing and looks for <meta name="og:image" content="https://imgur/adfstdd"> and displays whatever image is in the content field. Similarly the widget title is populated from <meta name="og:title" content="About Us">
In a static html site there is only one index.html so all routes have the same meta tags unless you overwrite the index.html file using an edge worker.