I am using Wordpress for my Content management system. After a while I am trying to make it better performance wise and the tools I am using to analyse my website is Gtmetrix.
I have done a lot of performance optimization but there is one problem I can't solve, actually I don't even know when its being generated.
The problem is related to Expires Header for the following files:
connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.3
platform.twitter.com/widgets.js
platform.stumbleupon.com/1/widgets.js
apis.google.com/js/platform.js
www.facebook.com/impression.php/f38617d6c3bf89e/lid=115&payload=%7B%22source%22%3A%22jssdk%22%7D
I am also using Woocommerce.
Can you help me to remove this files from my website or at least add expire header to them? which I think is not possible since this file are being loaded from somewhere else right?!
You cannot change the headers sent by websites you don't control.
Facebook, Twitter, StumbleUpon and Google all control their own headers and have their own reasons for the expiration time and other cache settings that they send through.
You can only make these changes on a domain that you control. In this case your options are:
Consider alternative ways to connect to these social networks. For example, you could code your own custom scripts, or find a Wordpress plugin that will run locally on your page (even with this, you may not totally be able to remove reliance on these external scripts, depending on the exact functionality you want)
Don't get hung up trying to get good results for everything GTMetrix tells you. Don't get me wrong, GTMetrix's suggestions are great and you can learn a lot from them, but it's rarely possible to do absolutely everything 100% of the time. Do your best, do what's under your control, and you'll definitely notice your site's speed (and hopefully ranking) increase.
For what it's worth, installing a local caching plugin like W3 Total Cache generally deals with several of GTMetrix's metrics in one go!