Activer la compression GZIP pour mon site et améliorer sa vitesse

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Activer la compression GZIP pour mon site et améliorer sa vitesse

    Bonjour

    Pourriez vous m'indiquer comment mettre en place la compression GZIP pour site Joomla v2.5.16 ?

    J'ai bien activé GZIP dans le panneau de configuration du site et j'ai également ajouté ces lignes à la fin de mon fichier .htaccess :

    Code:
    # compress text, html, javascript, css, xml:
    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript
    Pour autant Google Page Speed me dit que la compression n'est pas activée ...

    De plus, j'ai passé mon site au test www.woorank.com
    Le site me donne des pistes à améliorer mais je ne sais pas quoi faire pour les points suivants :

    voir captures ci-joint :

    Cliquez sur l'image pour l'afficher en taille normale

Nom : 8q0k.jpg 
Affichages : 1 
Taille : 15,0 Ko 
ID : 1819828

    et

    Cliquez sur l'image pour l'afficher en taille normale

Nom : vkfc.png 
Affichages : 1 
Taille : 9,3 Ko 
ID : 1819829

    Pourriez vous me dire ce qui peut être fait ?
    Notemment au sujet de inline et des styles CSS

    L'adresse du site est : http://www.bilans-thermiques.fr

    Merci à vous,

  • #2
    Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

    En ce qui concerne la compression il faut déjà que tu voies ce que propose ton hébergeur (en principe la compression au niveau du serveur est meilleure que celle de Joomla).
    Pour le mode deflate, avant les AddouputfilterByType, il faut d'abord prendre les précautions d'usage, ensuite avant de configurer selon les types de fichiers, autoriser en premier lieu la compression :

    Code:
    <IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    AddOutputFilterByType DEFLATE application/x-httpd-php text/html text/xml text/plain text/css text/javascript application/javascript application/x-javascript image/jpeg image/jpg image/png image/gif font/ttf font/eot font/otf
    </IfModule>
    En ce qui concerne les problèmes de fichiers CSS et javascript, voit du coté des extensions comme JCHOptimize, qui est gratuit (une version PRO à 5$) et qui pour moi a fonctionné out of the box (sans paramétrage autre que ceux conseillés par défaut) et que je trouve très efficace (la version PRO permet d'optimiser le CSS inline et le javascript des include PHP)

    Cordialement
    Il y a 10 sortes de gens. Ceux qui savent compter en binaire et ceux qui ne savent pas ...

    Commentaire


    • #3
      Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

      Le code est a insérer dans mon .htaccess n'est de pas ?

      Code:
      <IfModule mod_deflate.c>
      SetOutputFilter DEFLATE
      AddOutputFilterByType DEFLATE application/x-httpd-php text/html text/xml text/plain text/css text/javascript application/javascript application/x-javascript image/jpeg image/jpg image/png image/gif font/ttf font/eot font/otf
      </IfModule>
      Avant le code que j'ai déjà inséré ?

      Commentaire


      • #4
        Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

        Bonjour,

        Si c'est bien mod_deflate qui est actif sur l'hébergement, et non le (plus ancien) mod_gzip, une optimisation assez intéressante serait
        Code:
        # Optimizing compression
        <IfModule mod_deflate.c>
            #The following line is enough for .js and .css
            AddOutputFilter DEFLATE js css
        
            #The following line also enables compression by file content type, for the following list of Content-Type:s
            AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/x-javascript
        
            #The following lines are to avoid bugs with some browsers
            BrowserMatch ^Mozilla/4 gzip-only-text/html
            BrowserMatch ^Mozilla/4\.0[678] no-gzip
            BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
        </IfModule>
        <IfModule mod_headers.c>
          # Optimize for vary-encoding
          <FilesMatch "\.(js|css|xml|gz)$">
            Header append Vary: Accept-Encoding
          </FilesMatch>
        </IfModule>
        # Image and js caching
        Header unset Pragma
        FileETag None
        Header unset ETag
        # cache images/pdf docs for 10 days
        <FilesMatch "\.(ico|pdf|jpg|jpeg|png|gif)$">
          Header set Cache-Control "max-age=864000, public, must-revalidate"
          #Header unset Last-Modified
        </FilesMatch>
        # cache html/htm/xml/txt diles for 2 days
        <FilesMatch "\.(html|htm|xml|txt)$">
          Header set Cache-Control "max-age=7200, must-revalidate"
        </FilesMatch>
        # cache css and js for 10 days
        <FilesMatch "\.(css|js)$">
          Header set Cache-Control "max-age=864000, public, must-revalidate"
          # Header unset Last-Modified
        </FilesMatch>
        Ici, en plus de la compression, on gère un cache via Apache, ce qui est extrêmement efficace, bien plus que le cache Joomla! (mais ce cache Apache peut être complété par un cache Joomla!, sauf si on utilise également un accélérateur PHP).
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #5
          Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

          Je vais essayer, si le serveur utilise une compression différente, au pire ça ne marchera pas ?

          Je ne connais pas les accélérateurs php, existent ils sous forme de modules à installer sous Joomla ?

          Commentaire


          • #6
            Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

            mod_deflate est présent en général sur toutes les versions récentes de Apache, il a tendance à remplacer le très vieillissant mod_gzip.

            Les accélérateurs PHP sont des extensions de PHP (eAccelerator, Zend Oprimizer, etc..) qui sont parfois installés sur le serveur. En général, un phpinfo (sous Joomla!, Informations système, Informations PHP) permet de déterminer si l'un de ces accélérateurs (en fait un cache opcode PHP optimisé) est installé et actif.
            Pas de demande de support par MP.
            S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

            Commentaire


            • #7
              Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

              @Jisse03 explications intéressantes.
              Va falloir que je me décides à mettre mon nez dans le codage d'un .htaccess en détail.

              Tu donnerais pas des cours du soir par hasard ?
              Il y a 10 sortes de gens. Ceux qui savent compter en binaire et ceux qui ne savent pas ...

              Commentaire


              • #8
                Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                Envoyé par PieceOfCake Voir le message
                Va falloir que je me décides à mettre mon nez dans le codage d'un .htaccess en détail.
                Bien qu'on puisse le mettre en .htaccess, sur des serveurs dédiés ou VPS, on case ça, directement dans les paramètres du VHost Apache, ce qui évite de charger trop le htaccess.

                C'est vrai que vu le nombre de mods apache, on peut optimiser à peu près tout

                Le meilleur cours du soir est d'oser affronter la doc (la plupart du temps aussi digeste qu'un plum pudding anglais) de Apache et ses modules
                Pas de demande de support par MP.
                S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                Commentaire


                • #9
                  Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                  Le code que tu as fourni doit il se mettre a un endroit particulier dans le fichier htaccess ?

                  Puis je le mettre en tête de code et intégrer l'existant ensuite ?

                  Commentaire


                  • #10
                    Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                    Mets le au début, suivi du contenu de htaccess.txt de Joomla!

                    Tu peux virer tes tentatives précédentes
                    Pas de demande de support par MP.
                    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                    Commentaire


                    • #11
                      Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                      Est ce à mettre dans .htaccess ou htaccess.txt ?

                      J'ai l'impression que ces 2 fichiers n'ont pas le même rôle, d'ailleurs je ne sais pas leur fonctionnalités respective.

                      Ont ils un rôle de doublon ou le fichier htaccess.txt sert de base d'information à transferer dans le .htaccess ?

                      A présent mon fichier .htaccess contient ceci, cela vous parait il correct ?


                      Code:
                      # DO NOT REMOVE THIS LINE AND THE LINES BELOW ERRORPAGEID:DyWanu
                      ErrorDocument 403 /403.html
                      # DO NOT REMOVE THIS LINE AND THE LINES ABOVE DyWanu:ERRORPAGEID
                      
                      ##
                      # @package		Joomla
                      # @copyright	Copyright (C) 2005 - 2012 Open Source Matters. All rights reserved.
                      # @license		GNU General Public License version 2 or later; see LICENSE.txt
                      ##
                      
                      ##
                      # READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
                      #
                      # The line just below this section: 'Options +FollowSymLinks' may cause problems
                      # with some server configurations.  It is required for use of mod_rewrite, but may already
                      # be set by your server administrator in a way that dissallows changing it in
                      # your .htaccess file.  If using it causes your server to error out, comment it out (add # to
                      # beginning of line), reload your site in your browser and test your sef url's.  If they work,
                      # it has been set by your server administrator and you do not need it set here.
                      ##
                      
                      
                      
                      # Optimizing compression
                      <IfModule mod_deflate.c>
                          #The following line is enough for .js and .css
                          AddOutputFilter DEFLATE js css
                      
                          #The following line also enables compression by file content type, for the following list of Content-Type:s
                          AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/x-javascript
                      
                          #The following lines are to avoid bugs with some browsers
                          BrowserMatch ^Mozilla/4 gzip-only-text/html
                          BrowserMatch ^Mozilla/4\.0[678] no-gzip
                          BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
                      </IfModule>
                      <IfModule mod_headers.c>
                        # Optimize for vary-encoding
                        <FilesMatch "\.(js|css|xml|gz)$">
                          Header append Vary: Accept-Encoding
                        </FilesMatch>
                      </IfModule>
                      # Image and js caching
                      Header unset Pragma
                      FileETag None
                      Header unset ETag
                      # cache images/pdf docs for 10 days
                      <FilesMatch "\.(ico|pdf|jpg|jpeg|png|gif)$">
                        Header set Cache-Control "max-age=864000, public, must-revalidate"
                        #Header unset Last-Modified
                      </FilesMatch>
                      # cache html/htm/xml/txt diles for 2 days
                      <FilesMatch "\.(html|htm|xml|txt)$">
                        Header set Cache-Control "max-age=7200, must-revalidate"
                      </FilesMatch>
                      # cache css and js for 10 days
                      <FilesMatch "\.(css|js)$">
                        Header set Cache-Control "max-age=864000, public, must-revalidate"
                        # Header unset Last-Modified
                      </FilesMatch>
                      
                      
                      
                      
                      
                      ## Can be commented out if causes errors, see notes above.
                      Options +FollowSymLinks
                      
                      ## Mod_rewrite in use.
                      
                      RewriteEngine On
                      
                      ## Begin - Rewrite rules to block out some common exploits.
                      # If you experience problems on your site block out the operations listed below
                      # This attempts to block the most common type of exploit `attempts` to Joomla!
                      #
                      # Block out any script trying to base64_encode data within the URL.
                      RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
                      # Block out any script that includes a <script> tag in URL.
                      RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
                      # Block out any script trying to set a PHP GLOBALS variable via URL.
                      RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
                      # Block out any script trying to modify a _REQUEST variable via URL.
                      RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
                      # Return 403 Forbidden header and show the content of the root homepage
                      RewriteRule .* index.php [F]
                      
                      # Redirection du site sans www vers le site avec www
                      Options +FollowSymlinks
                      RewriteCond %{HTTP_HOST} ^bilans-thermiques.fr$
                      RewriteRule ^(.*) http://www.bilans-thermiques.fr/$1 [QSA,L,R=301]
                      
                      ## End - Rewrite rules to block out some common exploits.
                      
                      
                      ## Begin - Custom redirects
                      #
                      # If you need to redirect some pages, or set a canonical non-www to
                      # www redirect (or vice versa), place that code here. Ensure those
                      # redirects use the correct RewriteRule syntax and the [R=301,L] flags.
                      RewriteEngine On
                      RewriteBase /
                      RewriteCond %{HTTP_HOST} !bilans-thermiques.fr$ [NC]
                      RewriteRule ^(.*)$ http://bilans-thermiques.fr/$1 [L,R=301]
                      ## End - Custom redirects
                      ## End - Custom redirects
                      
                      ##
                      # Uncomment following line if your webserver's URL
                      # is not directly related to physical file paths.
                      # Update Your Joomla! Directory (just / for root).
                      ##
                      
                      RewriteBase /
                      
                      ## Begin - Joomla! core SEF Section.
                      #
                      RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
                      #
                      
                      
                      ########## Begin - Augmentation valeur mémoire
                      #
                      php_value memory_limit 96M 
                      #
                      ########## Begin - Augmentation valeur mémoire
                      
                      
                      # If the requested path and file is not /index.php and the request
                      # has not already been internally rewritten to the index.php script
                      RewriteCond %{REQUEST_URI} !^/index\.php
                      # and the request is for something within the component folder,
                      # or for the site root, or for an extensionless URL, or the
                      # requested URL ends with one of the listed extensions
                      RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
                      # and the requested path and file doesn't directly match a physical file
                      RewriteCond %{REQUEST_FILENAME} !-f
                      # and the requested path and file doesn't directly match a physical folder
                      RewriteCond %{REQUEST_FILENAME} !-d
                      # internally rewrite the request to the index.php script
                      RewriteRule .* index.php [L]
                      #
                      ## End - Joomla! core SEF Section.
                      
                      php_flag magic_quotes_gpc off
                      php_value output_buffering off
                      php_flag display_errors off
                      Merci à vous pour tout ces renseignements.
                      Dernière édition par lcoulon à 17/11/2013, 23h53

                      Commentaire


                      • #12
                        Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                        .htaccess est le seul opérationnel sur un serveur Apache.

                        htaccess.txt est le fichier.htacces préparé lors de l'installation de Joomla mais non mis en place pour des raisons de sécurité ou tout au moins de stabilité évidente. Si pour une raison ou pour une autre, l'hébergeur ne fournit pas les composants (modules) Apache utilisés dans le fichier .htaccess, il y aurait risque d'une erreur 500 dès le début du processus. C'est pour cette raison que le processus recommandé est de commencer par regarder le contenu du fichier htaccess.txt avant de le renommer (et de le modifier) en .htaccess. Mais en totu état de cause, son contenu ets le minimum recommandé par Joomla.
                        Il y a 10 sortes de gens. Ceux qui savent compter en binaire et ceux qui ne savent pas ...

                        Commentaire


                        • #13
                          Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                          Est ce que la règle de compression donnée ci-dessus doit logement comprimer les fichiers Javascript ?

                          En effet, lorsque je teste mon site sur Google Page Speed, il me dit que la compression n'est pas activée :



                          Cliquez sur l'image pour l'afficher en taille normale

Nom : capture.jpg 
Affichages : 1 
Taille : 25,1 Ko 
ID : 1803141

                          Merci à vous,
                          Dernière édition par lcoulon à 21/11/2013, 12h14

                          Commentaire


                          • #14
                            Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                            La compression gzip est bien active non seulement pour le js, mais pour tout ce qui peut être compressé, y compris la page HTML et le CSS. Mais il est bien indiqué que mod_deflate doit être actif sur le serveur Apache.
                            Pas de demande de support par MP.
                            S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                            Commentaire


                            • #15
                              Re : Activer la compression GZIP pour mon site et améliorer sa vitesse

                              J'en conclu que le serveur ou mon site est hébergé ne gère pas mod_deflate, n'est-ce pas ?

                              Existe t-il une alternative pour utiliser GZIP malgré tout ?
                              si oui, pourriez vous m'indiquer quelles lignes ajouter dans mon fichier .htaccess svp ?

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X