2016-04-03 19 views
1

aşağıda htaccess var:Sorgu dizesinin htaccess ile URL'nin sonuna kadar çekilmesini nasıl önleyebilirim?

Options -Multiviews -Indexes +FollowSymLinks 
RewriteEngine On 
RewriteRule ^(pageA|pageB|pageC|pageD)(?:\/(\d+)\/?(.*))?$ 
      ./$1/?var1=$1&var2=$2&var3=$3 [NC,QSA,L] 

aşağıda URL'ler klasör hiyerarşisinde beri düzgün çalışması, klasör adları (pageA, pageB ....) ve her içindeki bir index.php dosyası vardır ve taşıma ediyorum

www.domain.com/pageA/

www.domain.com/pageA/12/title-of-item-number: URL geçirilen kimliği sayfasındaki uygun içeriği görüntülemek için -12

www.domain.com/pageA

istenen sayfa düzgün yükler ancak sorgu dizesi eklenecektir: Sadece klasör adını erişebilir ve eğik çizgi kaldırdığınızda

Benim sorun oluştuğunda url aşağıdaki gibi:

www.domain.com/pageA/?var1=pageA & var2 = & var3 =

Sorgu dizesinin URL'nin sonuna kadar çekilmesini nasıl önleyebilirim?

cevap

2

Sadece pageA/pageB vb. Ile eşleşen ve querystring olmadan URL'ye yeniden yazabildiği başka bir yeniden yazma kuralı ekleyin. Bu şekilde şöyle bir sonuç elde edersiniz:

Options -Multiviews -Indexes +FollowSymLinks 
RewriteEngine On 
RewriteRule ^(pageA|pageB|pageC|pageD)$ ./$1/ [L] 
RewriteRule ^(pageA|pageB|pageC|pageD)(?:\/(\d+)\/?(.*))?$ 
      ./$1/?var1=$1&var2=$2&var3=$3 [NC,QSA,L] 
+0

bunu düşündüğümden daha basit ... – KAD

İlgili konular