2016-03-20 13 views
1

Ama çalışmıyor Nedensemod_rewrite, bir soru işareti bulunan bir kuralı yok sayar gibi görünüyor?

RewriteRule ^page?user=(\d[^/]+) /page/$1/ [R=301,L] 

ile

domain.com/page?user=something

için

domain.com/page/something

yönlendirmek çalışıyorum. Sadece görmezden geliyor gibi görünüyor. domain.com/page?user=something'a gittiğimde hiçbir şey olmuyor. mod_rewrite etkin ve diğer tüm kurallar çalışıyor. URL'de ? neden olabileceğini varsayıyorum ama yanılıyor olabilirim?

cevap

1

Sen kök .htaccess bu 2 kuralları kullanabilirsiniz:

RewriteEngine On 

# external redirect from actual URL to pretty one 
RewriteCond %{THE_REQUEST} /page(?:\.php)\?user=([^\s&]+) [NC] 
RewriteRule^/page/%1? [R=302,L,NE] 

# internal forward from pretty URL to actual one 
RewriteRule ^page/([^/.]+)/?$ page?user=$1 [L,QSA,NC] 
+1

Çok teşekkürler, bu çalıştı! :) – user1996496

İlgili konular