2013-12-13 77 views
1

剛剛創建了一個基於WordPress的網站,現在我遇到了以下問題。在Wordpress中沒有構建的舊網站使用變量p=作爲它的頁面,就像Wordpress一樣。現在我試圖重定向他們,但這不起作用,我想,因爲Wordpress也使用p變量。用變量重定向wordpress頁面

我想http://purplethinking.nl/mauritshof/?p=brunch頁面重定向到頁面http://purplethinking.nl/mauritshof/feestelijk/brunch

我改變了我的.htaccess並添加以下行:

RewriteRule ^/mauritshof/?p=brunch$ /feestelijk/brunch/[L] 

您能告訴我在做什麼錯?

編輯:這是我的完整的.htaccess文件

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase /mauritshof/ 

RewriteCond %{QUERY_STRING} ^p=([^&]+) 
RewriteRule ^mauritshof/?$ /feestelijk/brunch/ [L,R] 

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /mauritshof/index.php [L] 
</IfModule> 

# END WordPress 

回答

1

您的規則不能工作,因爲:

  • RewriteRule不匹配QUERY_STRING。
  • RewriteRule不匹配導致的斜線
  • 你需要一個R標誌的重定向

完整的.htaccess

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase /mauritshof/ 

RewriteCond %{QUERY_STRING} ^p=(brunch)(?:&|$) 
RewriteRule ^/?$ /feestelijk/%1/? [L,R] 

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /mauritshof/index.php [L] 
</IfModule> 

# END WordPress 
+0

感謝您的快速回復!我將這些規則添加到我的.htaccess中,但仍然沒有運氣。 – PieterB

+0

你可以在你的問題中粘貼你的完整.htaccess。 – anubhava

+0

我已添加我的.htaccess文件 – PieterB