Utiliser un .htaccess pour différencier le contenu IE et Fx?

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

02 mars 2006, 22:12

Parfois on se dit que 255 caractères ça ne suffit pas pour certains titres...

Voilà mon problème, j'aimerais utiliser un .htaccess pour envoyer une page [statique] différente selon le navigateur de l'utilisateur. À savoir, j'aimerais envoyer une jolie page super valide et stricte pour tous les browsers du monde sauf IE qui requiert quelques hacks bien pourris pour s'afficher correctement. Et pour corser le tout, le contenu de cette page est négocié grâce à mod_negotiation et je préfèrerais ne pas utiliser mod_rewrite :D

Donc voici ma question: est-ce que quelqu'un a déjà fait ça, sait où regarder dans le manuel (la solution utilise sûrement mod_setenvif, mais je ne sais pas comment m'y prendre :() ou à défaut, connait le meilleur site d'aide sur Apache, français ou international ?

Pour l'anecdote, j'ai essayé #apache sur Freenode, en une journée à poster une question (moins compliquée que celle-là) pratiquement toutes les heures j'ai reçu un total de 0 réactions. Si je n'avais pas moi-même aidé d'autres utilisateurs du chan à régler leurs problèmes j'aurais cru que personne ne pouvait lire ce que j'y écrivais. :|

Merci d'avance ;)

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

02 mars 2006, 22:46

Ok, j'avance doucement mais sûrement... maintenant j'en suis à chercher comment appliquer un alias (cf mod_alias) d'après une variable d'environnement (mod_setenvif) sans trop interférer avec la négociation de mod_negotiation. Si quelqu'un sait faire ça dans un .htaccess, je suis preneur :lol:

Eléphant du PHP | 417 Messages

02 mars 2006, 23:01

---
Modifié en dernier par JazzFinder le 28 juin 2006, 16:35, modifié 1 fois.

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

02 mars 2006, 23:10

Excellente suggestion, merci du conseil. J'aurais dû commencer par Sitepoint en effet (je ne visite que le forum PHP Application Design donc j'oublie parfois qu'il y en a d'autres :)).

Mammouth du PHP | 19672 Messages

03 mars 2006, 00:32

Un détail m'échappe sûrement : pourquoi la page doit-elle nécessairement être statique ? Pourquoi ne pourrait-elle être partiellement dynamique, ce qui te permettrait d'utiliser HTTP_USER_AGENT pour déterminer le navigateur et ainsi définir quelles parties nécessaires à l'affichage approprié insérer ? :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

03 mars 2006, 01:15

Uniquement pour des raisons de performance, d'après mes tests une page statique est à peu près deux fois plus rapide qu'une page PHP. Dans les deux cas il s'agit d'une page précompressée, envoyée par readfile() dans le cas de PHP. Le gain net par page n'est que de quelques millisecondes, mais je suis près à dépenser un peu de mon temps pour économiser quelques secondes de CPU par jour. D'ailleurs, si je veux utiliser une page spéciale IE ce n'est que pour économiser ~1K par page, soit ~400 octets une fois compressé. C'est plus une question d'accomplissement personnel qu'un réel besoin technique :roll:

Au fait, je n'ai rien trouvé de très concluant donc je crois que je vais devoir m'en remettre à mod_rewrite (il faut juste que je demande gentiment à l'hébergeur en question de l'activer... oui, je sais, il devrait l'être par défaut :)).