2013-06-08 8 views
1

HI j'ai utilisé le code suivant pour rediriger vers le site Web mobile.Il fonctionne très bien de mobile à mobile site, domain.com à m.domain.com dans mobile, mais "? Id = 9 "à la fin de l'URL arrive. Comment supprimer leRediriger le site Web vers le site Web de version mobile en utilisant htaccess

?id=9 

de l'url .And comment rediriger le webiste mobile m.domain.com du navigateur de bureau pour domain.com. Le code ci-dessous redirect que le site de mobile à mobile webiste m.domain.com

# Check if mobile=1 is set and set cookie 'mobile' equal to 1 
RewriteCond %{QUERY_STRING} (^|&)mobile=1(&|$) 
RewriteRule^- [CO=mobile:1:%{HTTP_HOST}] 

# Check if mobile=0 is set and set cookie 'mobile' equal to 0 
RewriteCond %{QUERY_STRING} (^|&)mobile=0(&|$) 
RewriteRule^- [CO=mobile:0:%{HTTP_HOST}] 

# cookie can't be set and read in the same request so check 
RewriteCond %{QUERY_STRING} (^|&)mobile=0(&|$) 
RewriteRule^- [S=1] 

# Check if this looks like a mobile device 
RewriteCond %{HTTP:x-wap-profile} !^$ [OR] 
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC,OR] 
RewriteCond %{HTTP:Profile}  !^$ 

# Check if we're not already on the mobile site 
RewriteCond %{HTTP_HOST}   !^m\. 
# Check to make sure we haven't set the cookie before 
RewriteCond %{HTTP:Cookie}  !\mobile=0(;|$) 
# Now redirect to the mobile site 
RewriteRule^http://m.example.com%{REQUEST_URI} [R,L] 
+2

Si possible, s'il vous plaît ne pas . Utilisez plutôt le Web Responsive Design. – PointedEars

+0

++ @PointedEars Vous pouvez utiliser Moderniz js avec des requêtes média pour savoir si le périphérique est mobile et YepNope js pour le chargement dynamique conditionnel de fichiers JS et CSS. Si vous détectez que l'appareil est mobile, le JS mobile, CSS sera chargé. Sinon, le bureau JS, CSS sera chargé. De cette façon, vous avez un design réactif. –

+0

@TolisEmmanouilidis Modernizr nécessite un script côté client. Je recommande de ne pas compter sur les scripts côté client. Il n'est pas nécessaire de savoir si un appareil est un appareil mobile. Vous pouvez utiliser * seulement * les requêtes média - CSS simple - pour présenter le document correctement sur un tel périphérique. Vous pouvez ensuite utiliser des scripts pour la détection de la prise en charge de fonctionnalités spéciales, telles que l'API de géolocalisation. Encore une fois vous n'avez pas besoin/ne devriez pas utiliser Modernizr pour cela. – PointedEars

Répondre

1

Dépouiller chaîne de requête append ? dans l'URL cible comme ceci:

RewriteRule^http://m.example.com%{REQUEST_URI}? [R,L] 
+0

Cela fonctionne parfait .. merci –

+0

De rien, heureux que cela a fonctionné. – anubhava

Questions connexes