2014-03-26 57 views
0

重定向我重寫規則:.htaccess中有許多規則

RewriteEngine On 

RewriteCond %{HTTP_HOST} !^(www|static)\. 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301] //add www before adress 

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] //remove .php 
RewriteRule^%1 [R=301] 

RewriteCond %{REQUEST_FILENAME} !-d //remove .php 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.*?)/?$ $1.php 

RewriteRule ^portfolio/([0-9]+)([^.]*)$ /portfolio-single.php?id=$1 [L] 

但最後一個dosent工作,我想有像ADRESS = www.mysite.com/portfolio/3-some-name> /組合-single.php?id = 3

我不知道如何讓我工作。

(對不起我的英文不好)

回答

0

更改規則順序:

Options +FollowSymLinks -MultiViews 
RewriteEngine On 

RewriteCond %{HTTP_HOST} !^(www|static)\. [NC] 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] 

RewriteCond %{THE_REQUEST} \s([^.]+)\.php [NC] 
RewriteRule^%1 [R=301,L] 

RewriteRule ^portfolio/([0-9]+) /portfolio-single.php?id=$1 [L,NC,QSA] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC] 
RewriteRule ^(.+?)/?$ $1.php [L] 
+0

仍然沒有工作 – rafal235

+0

是組合中的一個目錄?你是否得到404的'www.mysite.com/portfolio/3-some-name'? – anubhava

+0

不,投資組合目錄,www.mysite.com/portfolio/3-some-name給我相同的www.mysite.com/portfolio – rafal235