簡體   English   中英

如何使用htaccess在干凈的URL結構中進行重寫

[英]How the rewrite in clean url structure with htaccess

我更改了網站的結構:刪除了/ nl /文件夾,並將下划線切換為條紋。 因此,我們希望將舊頁面重定向:www.example.com/nl/citygames_leuven到http://www.example.com/citygames-leuven

重定向工作了一段時間; 但是我的干凈URL重定向出現問題。 我被重定向到: http : //www.example.com/citygames-leuven? url=nl/ citygames_leuven

正如你看到的; url參數插入並在頁面上顯示錯誤。

這是我到目前為止的代碼:

Options All -Indexes 
RewriteEngine On 
RewriteBase / 


RewriteRule ^teambuilding/(.*)/?$ teambuilding.php?url=$1 [L]
RewriteRule ^citygame/(.*)/?$ citygame.php?url=$1 [L]
RewriteRule ^meeting/(.*)/?$ meeting.php?url=$1 [L]
RewriteRule ^aanzee/(.*)/?$ aanzee.php?url=$1 [L]
RewriteRule ^vip/(.*)/?$ vip.php?url=$1 [L]
RewriteRule ^verhuur/(.*)/?$ verhuur.php?url=$1 [L]
RewriteRule ^nieuws/(.*)/?$ nieuws.php?url=$1 [L]


#Url omzetten naar index.php?page= 
RewriteCond %{REQUEST_FILENAME} !-f [NC] 
RewriteCond %{REQUEST_FILENAME} !-d [NC] 
RewriteRule ^(.+)$ page.php?url=$1 [QSA] 



Redirect 301 /nl/citygames_antwerpen http://www.example.com/citygames-antwerpen
Redirect 301 /nl/citygames_leuven http://www.example.com/citygames-leuven
Redirect 301 /nl/teambuilding/offroad_buggy http://www.example.com/teambuilding/offroad-buggy

重新排列規則並在內部重寫規則之前放置301:

Options All -Indexes 
RewriteEngine On 
RewriteBase / 

RewriteRule ^nl/citygames_antwerpen/?$ /citygames-antwerpen [L,R=301]
RewriteRule ^nl/citygames_leuven/?$ /citygames-leuven [L,R=301]
RewriteRule ^nl/teambuilding/offroad_buggy/?$ /teambuilding/offroad-buggy [L,R=301]

RewriteRule ^teambuilding/(.*)/?$ teambuilding.php?url=$1 [L]
RewriteRule ^citygame/(.*)/?$ citygame.php?url=$1 [L]
RewriteRule ^meeting/(.*)/?$ meeting.php?url=$1 [L]
RewriteRule ^aanzee/(.*)/?$ aanzee.php?url=$1 [L]
RewriteRule ^vip/(.*)/?$ vip.php?url=$1 [L]
RewriteRule ^verhuur/(.*)/?$ verhuur.php?url=$1 [L]
RewriteRule ^nieuws/(.*)/?$ nieuws.php?url=$1 [L]

#Url omzetten naar index.php?page= 
RewriteCond %{REQUEST_FILENAME} !-f [NC] 
RewriteCond %{REQUEST_FILENAME} !-d [NC] 
RewriteRule ^(.+)$ page.php?url=$1 [L,QSA] 

PS:最好在mod_rewrite本身中執行此操作,並避免使用mod_alias規則。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM