ecommunlimited Posted October 5, 2016 Share Posted October 5, 2016 @@milerwan If you DON'T have something in your admin like "Tools - Server Info" so you can find what HTTP Server and PHP Version your using, then you can create a file in you root (public_html) directory and name it phpinfo.php.Place this: <? phpinfo(); ?> in the file and save and close. Then you can pull it up through your browser like this: http://www.infinitydream.com/phpinfo.php to find what SERVER_SOFTWARE and PHP Version your working with. It does make a difference on how you implament things. Hopefully your running Apache and PHP 7.This compresses a whole lot of stuff on your site. You can put it in your root directory in the .htaccess file. It will compress HTML, CSS, JavaScript, Text, XML and fonts. Some people prefer, or systems require GZIP. But DEFLTE works great for me. It all depends if your using mod_deflate or mod_gzip.Look for something like this: <IfModule mod_deflate.c> or <IfModule mod_gzip.c>. <IfModule mod_deflate.c> is usually for Apache 2 and <IfModule mod_gzip.c> is usually for Apache 1 wich is an older version of Apache.If you have <IfModule mod_deflate.c> then you can use the below for compression. Some people might think it's over kill but it works beautifully for me. With this I don't even have to use the "Configuration - GZip Compression" in my admin. This will speed your site up.<IfModule mod_deflate.c># Compress HTML, CSS, JavaScript, Text, XML and fonts AddOutputFilterByType DEFLATE application/atom+xml AddOutputFilterByType DEFLATE application/font-woff AddOutputFilterByType DEFLATE application/font-woff2 AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/json AddOutputFilterByType DEFLATE application/ld+json AddOutputFilterByType DEFLATE application/manifest+json AddOutputFilterByType DEFLATE application/pdf AddOutputFilterByType DEFLATE application/rdf+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/schema+json AddOutputFilterByType DEFLATE application/vnd.geo+json AddOutputFilterByType DEFLATE application/vnd.ms-fontobject AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/x-font/eot AddOutputFilterByType DEFLATE application/x-font/otf AddOutputFilterByType DEFLATE application/x-font/ttf AddOutputFilterByType DEFLATE application/x-font/woff AddOutputFilterByType DEFLATE application/x-httpd-php AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/x-web-app-manifest+json AddOutputFilterByType DEFLATE font/eot AddOutputFilterByType DEFLATE font/opentype AddOutputFilterByType DEFLATE font/ttf AddOutputFilterByType DEFLATE font/woff AddOutputFilterByType DEFLATE image/bmp AddOutputFilterByType DEFLATE image/gif AddOutputFilterByType DEFLATE image/jpg AddOutputFilterByType DEFLATE image/jpeg AddOutputFilterByType DEFLATE image/png AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE image/webp AddOutputFilterByType DEFLATE image/x-ico AddOutputFilterByType DEFLATE image/x-icon AddOutputFilterByType DEFLATE image/x-generic AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/eot AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/pdf AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/richtext AddOutputFilterByType DEFLATE text/tff AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/xsd AddOutputFilterByType DEFLATE text/xsl AddOutputFilterByType DEFLATE text/x-generic</IfModule>----------------------------------------------------------------------------------------------In a broad sense this basicly tell the sever to accept what your're giving it and compresses the response and allows it to uderstand what's going on and helps with cache. Header append works for me but with some systems you'll have to use Header set. I nabbed the definition off Fastly."The Accept header tells you what sort of content the browser prefers, User-Agent specifies which version of what browser it is, Accept-Language contains a list of languages (and dialects) that the user has configured, and Accept-Encoding shows which compression schemes the browser supports." This will speed your site up.<IfModule mod_headers.c> <FilesMatch "\.(js|css|xml|eot|flv|gif|gz|htm|html|ico|jpg|jpeg|otf|png|pdf|php|swf|text|ttf|woff|woff2)$"> Header append Vary: Accept-Encoding </FilesMatch></IfModule>----------------------------------------------------------------------------------------------This tells the browsers how long to cache your info for so they don't have to pull a fresh copy of your pages every time someone clicks around on a site. With this, it will pull from the cache. This will speed your site up.Set the "Header set Cache-Control" to public, private or proxy-revalidate (among other things) per your need. The max-age= is in seconds. The longer you set it for the more they can pull from the cache.You need this because you have 77 things that the expiration is not specified on your homepage alone. This is for the "Leverage browser caching for the following cacheable resources". This will set the "expiration not specified" to a specific time.<IfModule mod_expires.c> <FilesMatch "\.(pdf|flv)$"> Header set Cache-Control "public, max-age=2629746" </FilesMatch> <FilesMatch "\.(bmp|cur|gif|ico|jpg|jpeg|png|svgz|swf|webp)$"> Header set Cache-Control "public, max-age=2629746" </FilesMatch> <FilesMatch "\.(css|js)$"> Header set Cache-Control "proxy-revalidate, max-age=31556926" </FilesMatch> <FilesMatch "\.(html|htm|php|txt|xml)$"> Header set Cache-Control "proxy-revalidate, max-age=600" </FilesMatch> <FilesMatch "\.(woff|woff2|ttf|eot)$"> Header set Cache-Control "public, max-age=2629746" </FilesMatch></IfModule>----------------------------------------------------------------------------------------------- Bill Link to comment Share on other sites More sharing options...
ecommunlimited Posted October 5, 2016 Share Posted October 5, 2016 @@milerwan For the: "Eliminate render-blocking JavaScript and CSS in above-the-fold content". It means you have .js blocking script resources and some .css blocking resources. This causes your site pages to render slowly. If you can, put as much of it below the fold. Right now, much of it is above the fold.The fold is the part where you can see with your eyes when your site comes up to be viewed.These javasrcipts are above the fold. Put as much .js in the template_bottom that you can. I put every .js that I can in the template_bottom. Any .css that isn't needed to render your page can be put there as well. If the .js and .css isn't called upon to load the page right away you can put it in the template_bottom.As a general rule the .css goes above the .js no matter where you decide to put it.http://www.infinitydream.com/ext/jquery/jquery-2.2.3.min.jshttp://www.infinitydream.com/ext/menu_xs/js/modernizr.custom.jshttp://www.infinitydream.com/ext/menu_xs/js/jquery.dlmenu.jsFor the: "Optimize CSS Delivery of the following" generally means put to them in the right order (no matter where you decide to put them). By testing your site, you'll see what gets called upon first and what is called upon last. Putting them in the right order will speed your site up.-----------------------------------------------------------------------------------------------The "Optimize images" means to commpress and condense your images. There's free (and paid for) optimizers out there. Some of the free ones aren't to bad and they can do pictures in bulk.Both Caesium and PIXresizer are free and they work ok. There's better optimizers out there but, if your tight on cash they'll do for now. You'll save a whole lot of bytes if you use them.-----------------------------------------------------------------------------------------------I already explained to you in an earlier post about "Minify JavaScript and CSS". If you have a whole file of nothing but .js that isn't minified already, go ahead and minify the whole file at one time with the .js minifier I mentioned about. Do the same for the .css. Less bytes means less the time the servers and browsers have to comb through you pages to figure out whats what before it loads your pages.------------------------------------------------------------------------------------------------If you do all (or some of) what I've suggested it will "Reduce server response time". And that is the goal you're trying to reach.------------------------------------------------------------------------------------------------ Link to comment Share on other sites More sharing options...
ecommunlimited Posted October 5, 2016 Share Posted October 5, 2016 For the: "Combine images using CSS sprites" basically means to take a bunch of little pitcture and make them into one big picture. It takes the browser less time to read and decipher one pidtue than it does 10 pictures. Look in your public_html/ext/colorbox/images/controls.png and you'll see what I mean.------------------------------------------------------------------------------------------------For the: "Defer parsing of JavaScript" basically means, if it isn't essential or needed for the page to load, you can have it load after all (or after the majority of the important stuff on the page) loads. Some stuff can wait until the end of the page load, to load.And some of it you can load in parallel while the page is loading. "Defer" basically means wait until the end to load and, "aysnc" means it can load during the page load but, don't get in the way of the essential things that are trying to load. Aysnc is an acronym for Asynchronous Load which is opposite of Synchronous Load.Synchronous Load basically mean to load in a string instead of in parallel. Defer, Asynchronous Load and Synchronous Load is more technical than that but, I'm speaking in general terms so it can make more sense. To me it's a bunch of mambo jumbo because I'm not a coder like some of the guys and gals on here. This stuff (and much nore) can be really confusing.------------------------------------------------------------------------------------------------For the "Specify image dimensions" it means, you should tell the browser what size the image is so it doesn't have to try and figure it out while it's rendering the page. If you don't tell it what size it is ahead of time and, it has to try and figure it out on the fly, that will slow down your page load time.------------------------------------------------------------------------------------------------You might know some of the stuff I've mentioned already and some of it you may not. I hope you can see that I'm truly trying to help you out and that I'm NOT trying to treat you like a little school boy. The osCommerce community is about helping one another out. Everything I've suggested and mentioned here today I had to learn the hard way. I'm trying to prevent you from having to learn the hard way. Take care @@milerwan. Bill Link to comment Share on other sites More sharing options...
milerwan Posted October 6, 2016 Author Share Posted October 6, 2016 I identified the problem of a big slowdown occurs on my product pages.It's caused by also_purchased query and the absence of the indexing of orders_products table.Now the server response is down from 6.8 to 0.52 seconds !Try yours. ;) Osc v2.3.4 BS "custom" PHP 7.3 compatible (710 modified files => o_O') Link to comment Share on other sites More sharing options...
milerwan Posted October 7, 2016 Author Share Posted October 7, 2016 @@ecommunlimitedI have installed "mod_pagespeed" for Apache server and now first page loaded below 1 second (instead of 2.xx before).I will minimize css when I have time.Thank you very much for your advices. :thumbsup: Osc v2.3.4 BS "custom" PHP 7.3 compatible (710 modified files => o_O') Link to comment Share on other sites More sharing options...
ecommunlimited Posted October 7, 2016 Share Posted October 7, 2016 @@milerwan You're welcome and good job! It's been nice chatting with you. Link to comment Share on other sites More sharing options...
milerwan Posted October 8, 2016 Author Share Posted October 8, 2016 I have modified the tep_db_query script of the carousel boxes so that they are related to the content of the displayed category.Now reviews, specials, featured and new products of the category/sub-category are shown on the left column. :)If no target product, the box only show the link button. Osc v2.3.4 BS "custom" PHP 7.3 compatible (710 modified files => o_O') Link to comment Share on other sites More sharing options...
radhavallabh Posted May 20, 2017 Share Posted May 20, 2017 Hi, @@milerwan@@ecommunlimited I have a query how to reduce database queries in oscommerce 2.3.4, To reduce server response time. warm Regds./ radhavallabh Link to comment Share on other sites More sharing options...
milerwan Posted May 29, 2017 Author Share Posted May 29, 2017 On 20/05/2017 at 11:41 AM, radhavallabh said: Hi, @@milerwan@@ecommunlimited I have a query how to reduce database queries in oscommerce 2.3.4, To reduce server response time. warm Regds./ radhavallabh Do you have a page on your website which is slower than others to display ? If all the pages are assigned then you need to follow the indications of this post. Osc v2.3.4 BS "custom" PHP 7.3 compatible (710 modified files => o_O') Link to comment Share on other sites More sharing options...
radhavallabh Posted May 30, 2017 Share Posted May 30, 2017 7 hours ago, milerwan said: Do you have a page on your website which is slower than others to display ? If all the pages are assigned then you need to follow the indications of this post. Hi, The Time to First Byte is the slowest to my website, Rendering after that is fast as I have incorporated many aspects of many speed optimizing posts of this forum.. So basically I am trying to figure and resolve all the issues that may cause it on a oscommerce store. If you could please help shed more light on why the TTFB may be of 1.8 sec hence I could look over all those aspects and scripts of the store. Awaiting your valuable guidance... Warm Regds/ radhavallabh Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.