IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Reverse proxy et PageSpeed


Sujet :

Apache

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 10
    Par défaut Reverse proxy et PageSpeed
    Bonjour,

    J'ai 2 questions sur la configuration d'apache sur 2 sujets : ReverseProxy et PageSpeed.
    Nous avons installé un serveur CENTOS avec apache qui sert de reverse proxy d'une application tournant sur un autre serveur IIS.
    De plus, ce reverseproxy fait du SSL et nous avons également installé le module pagespeed.

    Ma première question porte sur le module pagespeed.
    Afin de forcer les utilisateurs à arriver sur le site en https nous avons ajouté un virtualhost avec les directives suivantes :

    Pour http :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    NameVirtualHost *:80
     
    <VirtualHost *:80>
      ServerName  preprod.toto.fr
      Redirect / https://preprod.toto.fr/
    </VirtualHost>

    Pour https :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    NameVirtualHost *:443
     
    <VirtualHost *:443>
      <Location /balancer-manager>
        SetHandler balancer-manager
     
        Order Deny,Allow
        Deny from all
        Allow from 15.89
      </Location>
     
      Include conf.d/pagespeed.conf
     
      ErrorLog /var/log/httpd/ssl_error_log
      TransferLog /var/log/httpd/ssl_access_log
      LogLevel warn
     
      SSLEngine on
      SSLProtocol all -SSLv2
      SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
     
      ProxyPreserveHost on
     
      SSLCertificateFile /etc/httpd/conf/www.toto.fr.crt
      SSLCertificateKeyFile /etc/httpd/conf/www.toto.fr.key.nopass
      SSLCertificateChainFile /etc/httpd/conf/ca.crt
     
      <Files ~ "\.(cgi|shtml|phtml|php3?)$">
          SSLOptions +StdEnvVars
      </Files>
      <Directory "/var/www/cgi-bin">
          SSLOptions +StdEnvVars
      </Directory>
      SetEnvIf User-Agent ".*MSIE.*" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
      CustomLog logs/ssl_request_log \
              "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
     
      <Proxy balancer://mycluster>
        # cluster member 1
        BalancerMember http://preprod1.toto.fr:80 route=lb1 retry=10 connectiontimeout=2 timeout=30 keepalive=on min=10 max=50
     
        # cluster member 2
        #BalancerMember http://preprod2.toto.fr:80 route=lb2 retry=10 connectiontimeout=2 timeout=30 keepalive=on min=10 max=50
      </Proxy>
     
      ProxyPass /balancer-manager !
      ProxyPass / balancer://mycluster/ lbmethod=byrequests stickysession=BALANCEID
      ProxyPassReverse / http://preprod1.toto.fr/
      ServerName preprod.toto.fr
    </VirtualHost>
    Cela fonctionne parfaitement en ce qui concerne la redirection mais du coup, pagespeed ne fonctionne plus et je n'ai pas d'erreur.
    Pourquoi ? Comment faire fonctionner pagespeed avec la directive Redirect ?

    Deuxième question : Un autre site sous IIS est accessible de cette manière :
    http://assistance.toto.fr/repertoire1
    Nous aimerions que lorsque l'on tape l'URL http://assistance.toto.fr on arrive au même endroit que l'url précédente.
    Facile avec le reverse proxy on fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        ServerName assistance.toto.fr
        ProxyPreserveHost on
        SSLProxyEngine      On
        ProxyRequests       Off
        ProxyPass / http://15.89.0.31/repertoire1/
        ProxyPassReverse / http://15.89.0.31/repertoire1/

    Cela fonctionne impeccable. Sauf que certaines pages contiennent des urls du genre : http://assistance.toto.fr/autre_repertoire
    Et, avec la config ci-dessus cela ne fonctionne pas.
    Comment pouvons-nous faire pour conserver l'url unique assistance.toto.fr sachant que je n'ai pas la main sur le source de l'appli web ?

    Merci pour vos réponses.

    Nicolas

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Question 1 :
    Comment sais-tu que PageSpeed ne fonctionne plus ?
    Tu veux dire que si tu fait du HTTP (PageSpeed + reverse proxy) ça fonctionne ? En clair, c'est le passage en HTTPS, port 443, qui fait que ça ne fonctionne plus ?
    Il y a quoi dans conf.d/pagespeed.conf ?

    Question 2 :
    Il faut réécrire le code HTML des pages à la volée. Cela se fait avec mod_proxy_html.

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 10
    Par défaut
    Bonjour,

    Merci beaucoup pour ton retour.

    Question 1 : Je sais que pagespeed ne fonctionne plus car les pages affichées dans le navigateur ne contiennent plus le code modifié/compressé par pagespeed.
    Voici le fichier de conf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    <IfModule !mod_version.c>
      LoadModule version_module /usr/lib64/httpd/modules/mod_version.so
    </IfModule>
     
    <IfVersion < 2.4>
      LoadModule pagespeed_module /usr/lib64/httpd/modules/mod_pagespeed.so
    </IfVersion>
    <IfVersion >= 2.4.2>
      LoadModule pagespeed_module /usr/lib64/httpd/modules/mod_pagespeed_ap24.so
    </IfVersion>
     
    <IfModule !mod_deflate.c>
     LoadModule deflate_module /usr/lib64/httpd/modules/mod_deflate.so
    </IfModule>
    <IfModule pagespeed_module>
     
        ModPagespeed on
     
        AddOutputFilterByType MOD_PAGESPEED_OUTPUT_FILTER text/html
     
        ModPagespeedFileCachePath            "/var/www/mod_pagespeed/cache/"
        ModPagespeedGeneratedFilePrefix      "/var/www/mod_pagespeed/files/"
     
    ModPagespeedEnableFilters combine_javascript
    ModPagespeedEnableFilters trim_urls
    ModPagespeedEnableFilters collapse_whitespace,elide_attributes,sprite_images
    ModPagespeedEnableFilters insert_image_dimensions,recompress_images,resize_images
    ModPagespeedEnableFilters add_head
    ModPagespeedEnableFilters combine_css
    ModPagespeedEnableFilters convert_meta_tags
    ModPagespeedEnableFilters extend_cache
    ModPagespeedEnableFilters inline_import_to_link
    ModPagespeedEnableFilters rewrite_css
    ModPagespeedEnableFilters rewrite_javascript
    ModPagespeedEnableFilters rewrite_style_attributes
    ModPagespeedEnableFilters combine_heads
    ModPagespeedEnableFilters move_css_to_head
    ModPagespeedEnableFilters convert_jpeg_to_webp
    ModPagespeedEnableFilters flatten_css_imports,inline_import_to_link
     
    ModPagespeedMapOriginDomain <a href="http://localhost" target="_blank">http://localhost</a> <a href="https://preprod.toto.fr" target="_blank">https://preprod.toto.fr</a>
     
        ModPagespeedImageMaxRewritesAtOnce      0
     
        ModPagespeedAvoidRenamingIntrospectiveJavascript on
     
        <Location /mod_pagespeed_beacon>
              SetHandler mod_pagespeed_beacon
        </Location>
     
        <Location /mod_pagespeed_statistics>
            Order allow,deny
            Allow from localhost
            Allow from 127.0.0.1
            SetHandler mod_pagespeed_statistics
        </Location>
     
        ModPagespeedMessageBufferSize 100000
     
        <Location /mod_pagespeed_message>
            Allow from localhost
            Allow from 127.0.0.1
            SetHandler mod_pagespeed_message
        </Location>
        <Location /mod_pagespeed_referer_statistics>
            Allow from localhost
            Allow from 127.0.0.1
            SetHandler mod_pagespeed_referer_statistics
        </Location>
    </IfModule>
    Question 2 : Je vais me pencher sur mod_proxy_html

    Merci

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Pour la question 1, la 2nde question que je posais est importante : il s'agit de savoir si c'est le passage en HTTPS qui fait planter ton truc. Donc il faut voir si la même configuration de PageSpeed + reverse proxy mais en HTTP fonctionne. Si cela ne fonctionne pas non plus, c'est a priori un problème avec le reverse proxy ; en revanche si ça fonctionne c'est le passage en HTTPS mais si c'est le cas, je ne vois pas pourquoi.

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/12/2007, 03h16
  2. Reverse Proxy Apache et IIS
    Par pseudomh dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 26/03/2007, 16h09
  3. Problème Apache en Reverse Proxy + IIS
    Par CaroleM dans le forum Serveurs (Apache, IIS,...)
    Réponses: 3
    Dernier message: 12/03/2007, 10h07
  4. erreur d'acces via reverse proxy apache
    Par bretagne dans le forum Apache
    Réponses: 1
    Dernier message: 28/01/2007, 12h39
  5. [html:base] utilisation d'un reverse proxy
    Par Jerome L. dans le forum Struts 1
    Réponses: 2
    Dernier message: 08/06/2006, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo