2014-11-25 2 views
0

позволяет сказать, что моя страница домена www.website.com/about , а затем пользователь помещает www.website.com/about/ (замыкающая слэш) в конце.htaccess 301 переадресацию если страница замыкающая слэш

он возвращает ту же страницу, отлично. Однако поисковые системы могут рассматривать это как дублирующее содержимое, поскольку его можно рассматривать как 2 страницы.

если пользователь помещает конечную косую черту в конце страницы, я хочу, чтобы они переадресовали 301 на правильную страницу.

мой файл .htaccess выглядит следующим образом

# Begin cache control # 
    ExpiresActive on 
    ExpiresDefault "now plus 1440 minutes" 
    ExpiresByType text/html "now plus 1440 minutes" 
    <FilesMatch "\.(css|png|bmp|ico|htm|gff|html|js|jpg|jpeg|gif|gcf)$"> 
    FileETag MTime Size 
    ExpiresDefault "now plus 1440 minutes" 
    </FilesMatch> 


    # End cache control # 
    Options +FollowSymLinks -MultiViews 


    AddOutputFilterByType DEFLATE text/html image/png image/jpeg image/jpg text/css text/javascript 
    # Turn mod_rewrite on 
    RewriteEngine On 
    RewriteBase/
    ## hide .php extension 
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
    RewriteRule^%1 [R,L,NC] 
    RewriteCond %{DOCUMENT_ROOT}/$1.php -f 
    RewriteRule ^(.*?)/?$ $1.php [L,NC] 

знает любой, как я могу добиться этого, как и все им пытаются работать не будет.

ответ

0

Вы можете вставить это правило непосредственно перед последним правилом, чтобы удалить слэш:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{THE_REQUEST} \s(.+?)/+[?\s] 
RewriteRule ^(.+?)/$ /$1 [R=302,NE,L] 
Смежные вопросы