Resolving issues with CDN and fonts (icons)

If you are using an icon font (for example  Font Awesome) and a CDN, it won't probably work well because of the Cross Domain font request limitation.

Solution

You will have to add some specific headers to allow cross domain origin. 
If you use your own CDN, paste this in your .htaccess file: 

# ----------------------------------------------------------------------
# CORS-enabled images (@crossorigin)
# ----------------------------------------------------------------------
# Send CORS headers if browsers request them; enabled by default for images.
# developer.mozilla.org/en/CORS_Enabled_Image
# blog.chromium.org/2011/07/using-cross-domain-images-in-webgl-and.html
# hacks.mozilla.org/2011/11/using-cors-to-load-webgl-textures-from-cross-domain-images/
# wiki.mozilla.org/Security/Reviews/crossoriginAttribute
<IfModule mod_setenvif.c>
  <IfModule mod_headers.c>
    # mod_headers, y u no match by Content-Type?!
    <FilesMatch "\.(gif|png|jpe?g|svg|svgz|ico|webp)$">
      SetEnvIf Origin ":" IS_CORS
      Header set Access-Control-Allow-Origin "*" env=IS_CORS
    </FilesMatch>
  </IfModule>
</IfModule>
# ----------------------------------------------------------------------
# Webfont access
# ----------------------------------------------------------------------
# Allow access from all domains for webfonts.
# Alternatively you could only whitelist your
# subdomains like "subdomain.example.com".
<IfModule mod_headers.c>
  <FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css|css)$">
    Header set Access-Control-Allow-Origin "*"
  </FilesMatch>
</IfModule>

If you use Nginx, include this code in your virtual host file:

location ~* \.(eot|css|otf|ttf|woff)$ {
add_header Access-Control-Allow-Origin *;
}

For MaxCDN you can follow this solution.

Webfonts within stylesheets

If you've checked the above and are still having an issue with icons showing up, it could be due to the fact that sometimes a webfont is called from within a stylesheet like this: 

In this case, even if you have applied the fix above, the necessary headers are not applied to the font, so it still doesn't show up. 
You can find out which stylesheet contains the reference to the font by using the developer tools in your browser: 

The solution is to add the stylesheet URL to the Rejected Files list on the CDN tab:

If you have enabled CSS minification, you will also have to exclude that stylesheet from minification.