2016-04-13 2 views

Antwort

1

können Sie die folgende Regel verwenden:

RewriteEngine on 

#when there are query strings# 
RewriteCond %{QUERY_STRING} .+ 
#Rewrite "/" to "index.html"# 
RewriteRule ^$ /index.html? [NC,L] 
#when there are no query strings# 
RewriteCond %{QUERY_STRING} ^$ 
#Rewrite "/" to "first.html"# 
RewriteRule ^$ /first.html [NC,L] 
+0

Dank. +10 :) Was ist der Unterschied zwischen 'RewriteCond% {QUERY_STRING}! Pg =. + [NC]' und 'RewriteCond% {QUERY_STRING}^$'? Was ist zuverlässiger? – Becky

+1

'RewriteCond% {QUERY_STRING}^$' ist eine Bedingung für die Regel, sie stimmt mit leeren Abfragezeichenfolgen ** überein, wenn keine Abfragezeichenfolge ** und 'RewriteCond% {QUERY_STRING}!^Pg =. +' Eine andere Bedingung ist , verwenden wir es, um eine bestimmte Abfragezeichenfolge übereinzustimmen ** wenn query_string! = pg = foo ** – starkeen

2

Sie in der .htaccess verwenden können:

RewriteEngine on 
RewriteCond %{QUERY_STRING} !pg=.+ [NC] 
RewriteRule ^$ first.html [NC,L] 
+1

Danke. +10 :) Was ist der Unterschied zwischen 'RewriteCond% {QUERY_STRING}! Pg =. + [NC]' und 'RewriteCond% {QUERY_STRING}^$'? Was ist zuverlässiger? – Becky

+2

Mit '! Pg =. +' Testen Sie, ob der Query-String 'pg' nicht existiert. Während Sie mit '^ $' testen, dass es keine Abfragezeichenfolge gibt. – Croises

Verwandte Themen