<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
Options +FollowSymLinks
php_flag display_errors off
# запретить отображение ошибок (требование монитора качества)
php_flag allow_url_fopen off
# запретить использовать удаленые файлы (требование проактивной защиты)
</IfModule>
############################################################################
#### Выбор основного зеркала (с www или без www) с сохранением пртокола ####
############################################################################
RewriteCond %{ENV:HTTPS} on
#Если включен https
RewriteRule .* - [E=SSL:s]
#То создаем переменную "ssl" с текстом s
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
# Проверяем, содержит ли домен www в начале URL.
RewriteRule ^(.*)$ http%{ENV:SSL}://%1/$1 [R=301,L]
# Перенаправляем удаляем www если протокол https то подставляется буква s
############################################################################
#### редирект с алиаса к сайту ####
############################################################################
RewriteCond %{HTTP_HOST} !^www(.|)pd\.info$ [NC]
RewriteRule ^(.*)$ https://pd.info/$1 [R=301,L]
############################################################################
#### Перенаправляем протокол http на https ####
############################################################################
RewriteCond %{HTTP:X-HTTPS} !1
# Проверяем наличие https в URL.
# RewriteCond %{ENV:HTTPS} !on
# закоментировал свое условие, вставил твое, от сервера зависит какое лучше использовать.
RewriteCond %{REQUEST_FILENAME} !^/\.well-known(.*)$
# если нет well-known, не знаю зачем тебе это но вставил
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
# Перенаправляем протокол на http.
############################################################################
#### Убираем слеши в конце URL для статических файлов (содержит точку) ####
############################################################################
RewriteCond %{REQUEST_URI} \..+$
# Если файл содержит точку.
RewriteCond %{REQUEST_FILENAME} !-d
# И это не директория.
RewriteCond %{REQUEST_FILENAME} -f
# Является файлом.
RewriteCond %{REQUEST_URI} ^(.+)/$
# И в конце URL есть слеш.
RewriteRule ^(.+)/$ /$1 [R=301,L]
# Исключить слеш.
############################################################################
#### Добавляем слеш(/), если его нет, и это не файл. ####
############################################################################
RewriteCond %{REQUEST_URI} !(.*)/$
# Если слеша в конце нет.
RewriteCond %{REQUEST_FILENAME} !-f
# Не является файлом.
RewriteCond %{REQUEST_URI} !\..+$
# В URL нет точки (файл).
RewriteRule ^(.*)$ $1/ [L,R=301]
# Добавляем слеш в конце.
############################################################################
#### Убираем index.php, если он есть в конце URL ####
############################################################################
RewriteCond %{REQUEST_METHOD} =GET
# Выявляем GET запрос в URL (не POST).
RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
# URL cодержит index.php в конце.
RewriteRule ^(.*)$ %1/ [R=301,L]
# Удалить index.php из URL.
############################################################################
#### Компрессия статического контента для гугл спид тест ####
############################################################################
<IfModule mod_deflate.c>
AddType image/svg+xml .svg
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
<IfModule mod_expires.c>
ExpiresActive on
ExpiresByType image/jpeg "access plus 3 day"
ExpiresByType image/svg "access plus 3 day"
ExpiresByType image/gif "access plus 3 day"
ExpiresByType image/png "access plus 3 day"
ExpiresByType text/javascript "access plus 3 day"
ExpiresByType text/css "access plus 3 day"
ExpiresByType application/javascript "access plus 3 day"
</IfModule>
############################################################################
#### Антивирус, только для 1С-Битрикс, ####
############################################################################
#php_value auto_prepend_file "/home/bitrix/ext_www/SITE.RU/bitrix/modules/security/tools/start.php"
# укажите путь до файла
# включить тут /bitrix/admin/security_antivirus.php?lang=ru
<IfModule mod_rewrite.c>
# Безопасность
RewriteRule ^composer\.(json|lock)$ / [R=404,L]
RewriteRule ^vendor(.*)$ / [R=404,L]
RewriteRule ^(.*)\.(idea|git|gitmodules|gitignore|htaccess|vagrant)$ / [R=404,L]
RewriteRule ^deploy-config\.json$ / [R=404,L]
# Bitrix
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>
RewriteCond %{QUERY_STRING} (^|&)route\=extension/feed/google_sitemap($|&)
RewriteRule ^index\.php$ /map.xml? [L,R=301]
RewriteEngine on
RewriteBase /
RewriteRule ^admin\/$ admin.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^(.{2,})\.example.com$
RewriteRule (.*) https://example.com/index.php?id=%1 [P,L]
RewriteCond %{HTTP_HOST} ^oldsite\.ru$
RewriteRule ^mugs/(.+[^/])/([0-9]{4,}/2018\-00001170\.jpg)$ https://newsite.ru/Eachtime/$1/mugshots/$2? [L,R=301]
RewriteCond %{HTTP_HOST} ^oldsite\.ru$
(.+[^/])/
любое количество символов от 1 до бесконечности Кроме /
до /, в общем выделяем все до следующего слеша.()
[0-9]{4,}
от нуля до девяти 4 раза, и обьеденяем уже достаточно большую часть урла второй группой.$1
и $2
RewriteCond %{QUERY_STRING} (^|&)attr_id\=([0-9]{1,})($|&)
# если есть такой гет параметр
RewriteRule ^(.+)$ /$1\?part_id=%2 [L,R=301]
#То выделить все что есть в урле и прихреначить к нему такой гет параметр
([0-9]{1,})
- от нуля до двевяти один и более раз повторить а так же все это в скобках вторых по счету а следоватлеьно это переменная%2
$1