со слешом?
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !\..{1,10}$ RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ https://%{SERVER_NAME}/$1/ [L,R=301]
А вот так правильно? все равно на 404 страницу направляется
Сразу после RewriteEngine On нужно вставить
У меня обычно вот так работает #добавляем слэш в конце RewriteCond %{REQUEST_URI} ^(.*/[^/\.]+)$ RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [R=301,L] #убираем с конца папок index.php RewriteCond %{REQUEST_URI} ^(.*)/index.php$ RewriteRule ^(.*)$ %1/ [R=301,L] # Лишние слэши RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$ RewriteRule (.*) %1/%2 [R=301,L] RewriteCond %{THE_REQUEST} // RewriteRule .* /$0 [R=301,L] #переадресация с index.php на главную RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html|htm)\ HTTP/ RewriteCond %{HTTP_HOST} ^(.*)$ [NC] RewriteRule ^index\.php$ http://%1/$1 [R=301,L] #Редирект с www to non-www(https) RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
так у нас выше используется метод перенаправления. По крайне мере у меня отрабатывает
двойной редирект - SEOшники съедят
Обсуждают сегодня