I've never heard of such a thing in web programming, where the pics and other elements are not embedded within the page's code - would that be even possible? -, but linked, for separate download indeed (i.e. all the pic or other code is within its own, dedicated file), be that from the same server or from others
-ital2
Yes it is possible and used most the time
<img src="example.png" />
the page code does not include the image directly although that is possible too.
Embedding the image would be more like this
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAADSCAMAAABThmYtAAAAXVB" />
Lets assume the web developer didn't base64 encode all his images. When loading a web page your browser opens up a few http/https connections to download/stream the resources (The browser downloads a stream of bytes for the image in this case)
Now the same can be done with javascript scripts
<script src="./ads.js"></script>
Now an adblock program of some kind may assume that ads.js contain well ads and prevent the browser from requesting the resource.
The server doesn't need to know if the resource was requested or not. Assuming ads.js is an adblock detector script; if the ads.js was requested then the browser would execute the javascript and remove the content dynamically that shows the real page content vs the adblock in use content. Only when that "fake ad" script gets loaded does the real content get shown.
While there will be exceptions to this, it is the general basis on how to detect adblock is to leverage the blocklists and load fake ad scripts that when blocked from being downloaded and executed the content doesn't show.
Now to the discussion about AdGuard.
I noticed that some adblock detectors will still pick it up others won't. Also the https filtering works by MITMproxy and installing its own root certificate into the system.