2013-08-20 345 views
0

我正在掌握.htaccess,但現在我陷入了需要多個重定向的情況。多個.htaccess規則?

  • 網站/ werknemers/5
  • 網站/ lijst/5

這些聯繫應該工作,從

  • 重定向的index.php?頁= werknemers & klant = 5
  • index.php?page = lijst & lijst = 5

我正在使用以下.htaccess,它正在工作! 但只有一個人的,我把在文檔的頂部

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)/(.*)$ index.php?page=$1&klant=$2 [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)/(.*)$ index.php?page=$1&lijst=$2 [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?page=$1 [L] 
+0

Web服務器不能這樣工作。 –

+0

好的..你能解釋我做錯了什麼嗎?你的評論不是非常有建設性的:) – Notflip

+0

你的匹配模式**完全一樣**。服務器應該如何區分它們? –

回答

0

因爲你的模式是完全一樣的,存在第一和第二條規則沒有區別,所以第一個總是匹配,你總是會得到klant查詢字符串不管是什麼。您可以對頁面名稱進行硬編碼,如果這是唯一不同的東西:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^werknemers/(.*)$ index.php?page=werknemers&klant=$1 [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^lijst/(.*)$ index.php?page=lijst&lijst=$1 [L] 
+0

完美!它正在工作!謝謝 – Notflip