Добавить косую черту после удаления расширения.html

Мой веб-сайт не www, он имеет WordPress в подкаталоге и некоторые статические веб-страницы в корне и других подкаталогах

  1. Я хочу удалить расширение.html с веб-страниц в корне и других статических веб-страниц в подкаталоге.
  2. добавить косую черту в конце.
  3. 301 перенаправить с не косой черты на URL с косой чертой.

так и должно быть

/articles.html to / Articles /

а также

/subdirectory/book.html в / подкаталог /book/

код ниже

  1. работа без косой черты в конце
  2. перенаправить 301 URL с косой чертой на не

вот мой.htaccess

 <IfModule mod_rewrite.c>     
 Options +FollowSymLinks -MultiViews


RewriteEngine On     
RewriteBase /

#removing trailing slash
RewriteCond %{REQUEST_FILENAME} !-d    
RewriteRule ^(.*)/$ $1 [R=301,L]

#www to non
RewriteCond %{HTTP_HOST} ^www\.(([a-z0-9_]+\.)?domain\.com)$ [NC]
RewriteRule .? http://%1%{REQUEST_URI} [R=301,L]

#html
RewriteCond %{REQUEST_FILENAME} !-f     
RewriteCond %{REQUEST_FILENAME} !-d    
RewriteRule ^([^\.]+)$ $1.html [NC,L]

#index redirect 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/     
RewriteRule ^index\.html$ http://domain.com/ [R=301,L]
RewriteCond %{THE_REQUEST} \.html     
RewriteRule ^(.*)\.html$ /$1 [R=301,L] 
</IfModule>

PS все в порядке с wordpress, проблемы только со статическими страницами.

Заранее спасибо

1 ответ

Кажется, я не могу комментировать, кажется, но я предполагаю, что WordPress имеет отдельный файл.htaccess, который содержит дополнительные правила для работы этих страниц. Я предполагаю, что вашим статическим страницам понадобятся дополнительные явные правила, которые могут быть добавлены в.htaccess или в виртуальный хост, но в обоих случаях они должны выглядеть следующим образом: RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^staticpage1$ ./staticpage1.html RewriteRule ^staticpage2$ ./staticpage2.html

Другие вопросы по тегам