Votre question

Redirection par htaccess avec exceptions

Tags :
  • Mobile
  • Desktop
  • Applications mobiles
Dernière réponse : dans Programmation
21 Février 2013 11:16:27

Bonjour,

Déso si le titre est un peu vague.
explications:
J'ai un site version desktop:
en fait deux noms de domaines dont l'un est l'alias de l'autre:
http://www.vhenin.be et http://www.vincent-henin.be (son alias)

avec une redirection vers m.vhenin.be si le site desktop vhenin.be est consulté par mobile/ipad/etc... Pas de problème si vhenin.be est consulté par un mobile. Redirection OK...
Le problème c'est qu'il n'y a avait aucune redirection quand vincent-henin.be était consulté (page blanche ou affichage de la version desktop incomplète...). Donc, j'ai placé un fichier htaccess qui redirige les gens vers vhenin.be (et donc m.vhenin.be si mobile) à l'ouverture de vincent-henin.be.

Le hic, c'est quand dans mes galeries l'URL des images est et vu que par htaccess, tout le trafic (même celui de vhenin.be) est redirigé vers m.vhenin.be si mobile, quand on clique sur une image avec un ipad/iphone, etc., on se retrouve sur la homepage de m.vhenin.be et pas à l'adresse de l'image.

Y a t'il moyen, sous la forme de "if /pix/ alors pas de réécriture" et donc pas de redirection vers version mobile au clic sur une image?
voici le ht access utilisé:

Citation :
RewriteEngine on
RewriteBase /
# Check if this is the noredirect query string
RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)
# Set a cookie, and skip the next rule
RewriteRule ^ - [CO=mredir:0:www.vhenin.be]

# Check if this looks like a mobile device
# (You could add another [OR] to the second one and add in what you
# had to check, but I believe most mobile devices should send at
# least one of these headers)
RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
RewriteCond %{HTTP:p rofile} !^$ [OR]
RewriteCond %{HTTP_USER_AGENT} "acs|alav|alca|amoi|audi|aste|avan|benq|bird|blac|blaz|brew|cell|cldc|cmd-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "dang|doco|eric|hipt|inno|ipaq|java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "maui|maxo|midp|mits|mmef|mobi|mot-|moto|mwbp|nec-|newt|noki|opwv" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "palm|pana|pant|pdxg|phil|play|pluc|port|prox|qtek|qwap|sage|sams|sany" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "sch-|sec-|send|seri|sgh-|shar|sie-|siem|smal|smar|sony|sph-|symb|t-mo" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "teli|tim-|tosh|tsm-|upg1|upsi|vk-v|voda|w3cs|wap-|wapa|wapi" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "wapp|wapr|webc|winw|winw|xda|xda-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "up.browser|up.link|windowssce|iemobile|mini|mmp" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "symbian|midp|wap|phone|pocket|mobile|pda|psp" [NC]
RewriteCond %{HTTP_USER_AGENT} !macintosh [NC]

# Check if we're not already on the mobile site
RewriteCond %{HTTP_HOST} !^m\.
# Can not read and write cookie in same request, must duplicate condition
RewriteCond %{QUERY_STRING} !(^|&)m=0(&|$)

# Check to make sure we haven't set the cookie before
RewriteCond %{HTTP_COOKIE} !^.*mredir=0.*$ [NC]

# Now redirect to the mobile site
RewriteRule ^ http://m.vhenin.be [R,L]



Any idea?
Merci d'avance à tous!

Vh.

Autres pages sur : redirection htaccess exceptions

7 Mars 2013 11:34:44

Any idea?
Personne n'a eu un problème similaire?

Merci d'avance,

V.
20 Mai 2013 12:47:00

Bonjour,

Tjs pas de réactions? ;-)
Bizarre...

Un ami m'a dit de checker au début du HTACCESS avec:
Citation :
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f


Ce que j'ai fait en mettant ça là au début du fichier:
Citation :
RewriteEngine on
RewriteBase /
# Check if this is the noredirect query string
RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
# Set a cookie, and skip the next rule
RewriteRule ^ - [CO=mredir:0:www.vincent-henin.be]

(le reste pareil au fichier dans le message de départ de ce topic...)
...
....

J'espère que c'est bien placé mais apparemment ça change rien.

Le problème persiste:
quand on consulte le site via mobile, au clic sur une image d'une galerie sur le lien 'Open Page' pour l'ouvrir en pleine résolution, on est redirigé vers la home page à savoir m.vhenin.be ! et non vers l'adresse de l'image: 'http://www.vhenin.be/pix/monimage.jpg' pour l'afficher plein-écran.

Est-il possible de faire un Array des objets qui ne doivent pas être redirigés comme mes images, pour qu'au clic plein écran sur l'une d'entre elles, on la voit simplement (donc pas de redirection).

Merci bcp!!!!
Vh.


20 Mai 2013 14:12:54

En suivant recommandation de http://stackoverflow.com/questions/2226364/trying-to-pu...

j'ai ajouté:
Citation :
RewriteEngine on
RewriteBase /
# Check if this is the noredirect query string
RewriteCond %{REQUEST_URI} !^/pix/?$
RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
# Set a cookie, and skip the next rule


puisqu'au final c'est mon folder www/pix/ qui ne doit pas être redirigé.
mais pas d'effet!!!

Vh.
Contenus similaires
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS