Здравствуйте. Мне нужно настроить .htaccess на 2 функции:
1. Убрать .html из конца ссылок
2. Редирект с http на https
Сначала был такой код:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^\S+\s+/([^.?]+)\.html
RewriteRule ^ https://site.com/%1 [R=301,L]
RewriteCond %{HTTPS} =off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule (.*) https://site.com/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html [L]
Но google ругался на то, что происходит редирект например с site.com/1.html на site.com/1 и не выдавал такие страницы в поиске.
В техподдержке хостинга подсказали такой вариант:
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html
Но он не убирает .html из конца.
Подскажите пожалуйста, как это исправить. Самое главное, чтобы не было никаких редиректов.