I am currently evaluating Google AMP pages. So for my static pages, I have implemented a valid amp based version & linked them together as per the documentation.
Please correct me If I'am wrong. End uesr sill hit the Original page, & the request will be intercepted by AMP based version ?
(Note that AMP is not "Google AMP" - and should not be confused with "Google AMP Cache" either)
The AMP FAQ states:
AMP files can be cached in the cloud in order to reduce the time content takes to get to a user’s mobile device. By using the AMP format, content producers are making the content in AMP files available to be cached by third parties. Under this type of framework, publishers continue to control their content, but platforms can easily cache or mirror the content for optimal delivery speed to users.
So Google AMP Cache is just one possible AMP cache, there might be others.
The documentation for the Google AMP Cache states:
Each time a user accesses AMP content from the cache, the content is automatically updated, and the updated version is served to the next user once the content has been cached.
This is further elaborated upon in the Update AMP Content documentation (emphasis mine):
The most effective way to update the version of any AMP document stored in the Google AMP Cache is to access that document using the AMP Cache URL format. The Google AMP Cache automatically requests the latest version of the AMP document from its origin and serves the updated version to the next user.
I've made a UML Sequence diagram to illustrate what happens:
It's important to note this:
To take advantage of the Google AMP Cache, an AMP URL must be accessed directly from the cache using the AMP Cache URL format.
A normal user making a request for your website directly through their mobile browser's address bar will not necessarily receive the AMP version. If their mobile-browser is aware of the AMP version (e.g. from storing the <link rel="amphtml" />
value) then it might use that, but in any event the request will go directly for your webserver and not hit any intermediate cache.
However if they make a request for your website via a search engine (e.g. Google) then Google will have stored the amphtml
path when it spidered your website, so it will direct users to the AMP version.