I've got a problem when I pass the html5 validator to my site from w3c validator. The errors are next:
Bad value Content-Script-Type for attribute http-equiv on element meta
<meta http-equiv="Content-Script-Type" content="text/javascript" >
Bad value expires for attribute http-equiv on element meta
<meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT" >
Bad value pragma for attribute http-equiv on element meta
<meta http-equiv="pragma" content="no-cache" >
Bad value Cache-Control for attribute http-equiv on element meta.
<meta http-equiv="Cache-Control" content="no-cache" >
What are the correct values to meta tags to pass html5 validator?
Meta tags are important because they impact how your site appears in the SERPs and how many people will be inclined to click through to your website. They will therefore impact your traffic and engagement rates, which can impact your SEO and rankings. Meta tags are an important part of a solid SEO strategy.
A metatag is a piece of HTML code that provides summary information about a web page. If used in an appropriate manner, these metatags can play a legitimate role in helping consumers locate information. But the ``keyword'' metatag is particularly susceptible to manipulation.
http-equiv valuescontent-security-policy. content-length. content-encoding. default-style.
Yes, order matters. The browser procedurally processes HTML. If the meta tag is first, Internet Explorer knows to use Compatibility Mode almost as soon as it starts parsing the document. Otherwise, it's already started parsing and processed everything else - your CSS, JavaScript, not in Compatibility Mode.
For HTML5 you use a cache manifest file in the header. This is an example of how to use: http://www.w3.org/TR/html5/browsers.html#manifests
Also, you force no cache with this:
<meta http-equiv="expires" content="0">
This is a good tutorial on how to use the cache manifest file: https://www.html5rocks.com/en/tutorials/appcache/beginner/#toc-manifest-file-creating
The accepted answer is wrong! This is a good answer.
To quote Alohci:
Putting caching instructions into meta tags is not a good idea, because although browsers may read them, proxies won't. For that reason, they are invalid and you should send caching instructions as real HTTP headers.
Addendum: For Apache and .htaccess you could use
<ifmodule mod_expires.c>
ExpiresActive On
ExpiresDefault value or
ExpiresByType text/css "access plus 1 month"
...
</IfModule>
PHP have headers_sent() and header() function for that.
function header_no_cache () {
\header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
\header('Pragma: no-cache'); // HTTP 1.0.
\header('Expires: 0'); // Proxies.
}
Point is that caching instructions should be in header. Not in html file.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With