2013-11-02 225 views
0

我在.htaccess中遇到URL重寫問題。下面是該文件的摘錄:Apache URL重寫無法正常工作

AddDefaultCharset utf-8 

RewriteEngine On 
RewriteRule ^(content\.php\?page=)(.+)$ $1.php [NC] 

我需要重寫URL像"content.php?page=quality-policy""quality-policy.php"

但我看到這一點:

Not Found 
The requested URL content.php was not found on this server. 

回答

1

你應該使用這樣的:

RewriteEngine On 
RewriteCond %{QUERY_STRING} page=([^&]*) [NC] 
RewriteRule ^content\.php$ %1.php [L] 

說明: 如果%{QUERY_STRING}包含頁=東西然後

重寫URL的內容。 php to something.php

%1是Rew中的正則表達式反向引用riteCond,不要與$ 1匹配,這是匹配的RewriteRule正則表達式中的第一個反向引用。標誌[L]強制這是要執行的最後一條規則,忽略後面的所有規則(如果有的話)。