We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23360
    • 258 Posts
    Bonjour à tous,

    Je viens de mettre en place Babel, pour cela j’ai adapté mon fichier htaccess (voir point 6 de ce tuto http://www.class-zec.com/en/blog/2011/seo-friendly-multilingual-websites-with-modx-and-babel.html).

    En fait, plus précisément,
    sous FF, quand je tape: http://www.hello-web.net, le visiteur est bien rediriger vers http://www.hello-web.net/fr/

    Par contre sous IE8 et Firefox, mais sous Linux, le visiteur reste sous http://www.hello-web.net
    et si vous aller, en tapant dans l’URL http://www.hello-web.net/fr/, le CSS est pas pris en compte.

    Auriez-vous une idée pourquoi?

    Milles mercis

    Voici mon htaccess

    # MODX supports Friendly URLs via this .htaccess file. You must serve web
    # pages via Apache with mod_rewrite to use this functionality, and you must
    # change the file name from ht.access to .htaccess.
    #
    # Make sure RewriteBase points to the directory where you installed MODX.
    # E.g., "/modx" if your installation is in a "modx" subdirectory.
    #
    # You may choose to make your URLs non-case-sensitive by adding a NC directive
    # to your rule: RewriteRule ^(.*)$ index.php?q=$1 [L,QSA,NC]

    RewriteEngine On
    RewriteBase /

    # Rewrite www.domain.com -> domain.com -- used with SEO Strict URLs plugin
    #RewriteCond %{HTTP_HOST} .
    #RewriteCond %{HTTP_HOST} !^example-domain-please-change\.com [NC]
    #RewriteRule (.*) http://example-domain-please-change.com/$1 [R=301,L]
    #
    # or for the opposite domain.com -> www.domain.com use the following
    # DO NOT USE BOTH
    #
    #RewriteCond %{HTTP_HOST} .
    #RewriteCond %{HTTP_HOST} !^www\.example-domain-please-change\.com [NC]
    #RewriteRule (.*) http://www.example-domain-please-change.com/$1 [R=301,L]



    # Rewrite secure requests properly to prevent SSL cert warnings, e.g. prevent
    # https://www.domain.com when your cert only allows https://secure.domain.com
    #RewriteCond %{SERVER_PORT} !^443
    #RewriteRule (.*) https://example-domain-please-change.com.com/$1 [R=301,L]


    # This has been commented on the 16-june-2011 due to Bebl configuration
    ## # The Friendly URLs part
    ## RewriteCond %{REQUEST_FILENAME} !-f
    ## RewriteCond %{REQUEST_FILENAME} !-d
    ## RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]


    # Added on the 16-june-2011 due to Babel configuration
    # The Friendly URLs part
    # detect language when requesting the root (/)
    RewriteCond %{HTTP:Accept-Language} !^fr [NC]
    RewriteRule ^$ fr/ [R=301,L]
    RewriteRule ^$ en/ [R=301,L]

    # redirect all requests to /en/favicon.ico and /de/favicon.ico
    # to /favicon.ico
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(fr|en)/favicon.ico$ favicon.ico [L,QSA]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(fr|en)/manager/templates/helloweb(.*)$ manager/templates/helloweb$2 [L,QSA]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(fr|en)/images(.*)$ images$2 [L,QSA]

    # redirect all requests to /fr/assets* and /en/assets* to /assets*
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(fr|en)/assets(.*)$ assets$2 [L,QSA]

    # redirect all other requests to /fr/* and /en/*
    # to index.php and set the cultureKey parameter
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(fr|en)?/?(.*)$ index.php?cultureKey=$1&q=$2 [L,QSA]
    # END OF Add du to Babel configuration...



    # Make sure .htc files are served with the proper MIME type, which is critical
    # for XP SP2. Un-comment if your host allows htaccess MIME type overrides.

    #AddType text/x-component .htc



    # If your server is not already configured as such, the following directive
    # should be uncommented in order to set PHP’s register_globals option to OFF.
    # This closes a major security hole that is abused by most XSS (cross-site
    # scripting) attacks. For more information: http://php.net/register_globals
    #
    # To verify that this option has been set to OFF, open the Manager and choose
    # Reports -> System Info and then click the phpinfo() link. Do a Find on Page
    # for "register_globals". The Local Value should be OFF. If the Master Value
    # is OFF then you do not need this directive here.
    #
    # IF REGISTER_GLOBALS DIRECTIVE CAUSES 500 INTERNAL SERVER ERRORS :
    #
    # Your server does not allow PHP directives to be set via .htaccess. In that
    # case you must make this change in your php.ini file instead. If you are
    # using a commercial web host, contact the administrators for assistance in
    # doing this. Not all servers allow local php.ini files, and they should
    # include all PHP configurations (not just this one), or you will effectively
    # reset everything to PHP defaults. Consult www.php.net for more detailed
    # information about setting PHP directives.

    #php_flag register_globals Off



    # For servers that support output compression, you should pick up a bit of
    # speed by un-commenting the following lines.

    #php_flag zlib.output_compression On
    #php_value zlib.output_compression_level 5



    # The following directives stop screen flicker in IE on CSS rollovers. If
    # needed, un-comment the following rules. When they’re in place, you may have
    # to do a force-refresh in order to see changes in your designs.

    #ExpiresActive On
    #ExpiresByType image/gif A2592000
    #ExpiresByType image/jpeg A2592000
    #ExpiresByType image/png A2592000
    #BrowserMatch "MSIE" brokenvary=1
    #BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1
    #BrowserMatch "Opera" !brokenvary
    #SetEnvIf brokenvary 1 force-no-vary

      • 2048
      • 15 Posts
      Quote from: pierrot10 at Jun 17, 2011, 07:00 PM

      En fait, plus précisément,
      sous FF, quand je tape: http://www.hello-web.net, le visiteur est bien rediriger vers http://www.hello-web.net/fr/

      Par contre sous IE8 et Firefox, mais sous Linux, le visiteur reste sous http://www.hello-web.net
      et si vous aller, en tapant dans l’URL http://www.hello-web.net/fr/, le CSS est pas pris en compte.

      sous FF4 linux ça me redirige sur http://www.hello-web.net/en/

      ce qui me parait logique vu tes règles :

      # Added on the 16-june-2011 due to Babel configuration
      # The Friendly URLs part
      # detect language when requesting the root (/)
      RewriteCond %{HTTP:Accept-Language} !^fr [NC]
      RewriteRule ^$ fr/ [R=301,L]
      RewriteRule ^$ en/ [R=301,L]

      en gros tu demandes si premier langage différent de /fr alors rediriger vers fr sinon vers /en
      inverse les 2 lignes wink

      pour le css ça m’a l’air bien ...
        coding Java Android and NDS
        • 23360
        • 258 Posts
        Ben j’ai fais deux trois truc entre temps.

        En fait le problème est surtout avec IE8

        (en fait le site est dirigé vers /en/ ou /fr/ selon la langue du navigateur
        J’ai fait les teste suivants:

        Quand je tape www.hello-web.net)
        Sous FF (Mac), le visiteur est bien redirigé vers www.hello-web.net/fr/
        Sous FF (Seven), ca marche
        Sous IE8 (Seven), ca ne marche pas
        Sous IE6 (XP) ca ne marche pas
        Sous FF (Debian), Ca marche
        Sous Opera (mac), ca marche
        Sous Safari (Mac),ca marche.

        Décidément, IE est toujours là pour nous chagriner!!!
          • 2048
          • 15 Posts
          bizarre tous mes navigateurs sous debian ( FF4, opera, chrome et epiphany) me dirigent vers /en

          même en changeant la langue du navigateur

            coding Java Android and NDS
            • 23360
            • 258 Posts
            Ha mais le problème se produit uniquement avec Internet Explorer. Avec tous les autres ca marche bien
              • 2048
              • 15 Posts
              Ah ben ça marche bien chez moi aussi maintenant ....
                coding Java Android and NDS
                • 23360
                • 258 Posts
                Hello,
                merci pour vos réaction.

                Ben oui ca marche parce que j’ai commenté ceci
                #RewriteCond %{HTTP:Accept-Language} !^fr [NC]
                #RewriteRule ^$ en/[R=301,L]
                #RewriteRule ^$ fr/ [R=301,L]
                


                En fait, le problème est toujours et j’ai commenté cette partie car le prob vient de là et je ne sais donc pas comment faire pour que ca marche sous IE.
                Sauf que maintenant l’utilisateur ne sera plus dévient selon la langue de son browser... shocked)