Как найти файл htaccess в битрикс
Перейти к содержимому

Как найти файл htaccess в битрикс

  • автор:

Настройка .htaccess в 1С-Битрикс

Настройка .htaccess в 1С-Битрикс

Сайт разработанный на любом CMS или framework движке файл находиться в корневой директории сайта.

В битриксе его можно увидеть через админку. в разделе «Файлы и папки», но я не рекомендую редактировать его через админку битрикса, лучше подключитесь по FTP/SFTP через любой файловый редактор и смело правьте его там. Да и вообще перед внесением каких либо новых правил в htaccess, скачайте этот файл себе на компьютер, чтобы при неудачных внесении правок можно было восстановить прежнюю версию файла.

Настройка редиректа с www на без www в 1С-Битрикс.

Чтобы Ваш сайт по адресу www.ваш-сайт.ru перенаправлялся на адрес ваш-сайт.ru, необходимо прописать в секции mod_rewrite.c следующее правило

#редирект с www на без-www RewriteCond % ^www\.(.*) [NC] RewriteRule ^(.*)$ https://%1/$1 [R=301,L] #наоборот с без www на www RewriteCond % !^www\.(.*) [NC] RewriteRule ^(.*)$ http://www.%/$1 [R=301,L]

Настройка редиректа с http на https в 1С-Битрикс

Если у Вас уже имеется SSL сертификат и прикрепили его к своему домену. В панеле администрирования хостинга в разделе настройки сайта должен быть пункт перенаправлять с http на https, если нет, то прописывайте это в файле htaccess. Это сделать очень важно, потому что если проигнорировать этой действие Вы получите дубли всех страниц, которые есть на сайте.

#редирект с http на https RewriteCond % off RewriteCond % !https RewriteRule ^(.*)$ https://%% [L,R=301]

Дубли страниц index.php в 1C-Битрикс.

Когда Вы создаете любой раздел, например /about/ (О нас), то он будет работать по двум адресам /about/ и /about/index.php. От таких дублей тоже избавляемся и прописываем правило:

RewriteCond % ^(.*)/index\.php$ RewriteCond % !bitrix/admin/ RewriteRule ^(.*)index\.php$ http://%/$1 [R=301,L]

Убираем повторяющие слеши в конце URL

RewriteCond % ^(.*?)\/(.*?)$ RewriteRule . %1/%2 [L,R=301] RewriteCond % // RewriteRule .* /$0 [R=301,L]

Добавляем слэш «/» в конце URL адресов

Чтобы страницы не были доступны по 2-м адресам https://ваш-сайт.ru/about/ и https://ваш-сайт.ru/about то необходимо настроить редирект на слеш в конце URL страницы

RewriteCond % ^(.*)/$ RewriteRule .* - [L] RewriteCond % 200 RewriteRule .* - [L] RewriteCond % =GET RewriteCond % ^(.*)/index.php$ RewriteRule ^(.*)$ %1/ [R=301,L]

Настройка браузерного кеширования при помощи htaccess 1С-Битрикс

Это позволит нам снизить нагрузку на сервер для увеличения производительности сайта. Обычно рекомендуют использовать именно браузерное кеширование изображений, файлов стилей и скриптов. Чтобы включить кеширование прописываем после секции mod_rewrite следующий код:

  AddOutputFilterByType DEFLATE text/plain text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript AddOutputFilterByType DEFLATE text/xml application/xml application/xhtml+xml application/rss+xml AddOutputFilterByType DEFLATE application/json AddOutputFilterByType DEFLATE application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon  #кэшировать html и htm файлы на один день Header set Cache-Control "max-age=43200" #кэшировать css, javascript и текстовые файлы на одну неделю Header set Cache-Control "max-age=604800" #кэшировать флэш и изображения на месяц Header set Cache-Control "max-age=2592000" #отключить кэширование Header unset Cache-Control 

Настройка файла .htaccess для 1С-Битрикс

Чтобы избежать проблем с поисковыми системами для вашего сайта, после сдачи проекта на Битрикс, проверьте правильно ли сконфигурирован файл .htaccess. Это позволит избежать вам дублей страниц, сделать редирект с http на https и т.д.

Ниже покажу что я добавляю к стандартному файлу .htaccess для 1С-Битрикс в каждом проекте.

Весь код мы размещаем внутри секции ниже правил :

Options +FollowSymLinks
RewriteEngine On

Для того чтобы избежать дублей страниц, добавляем слеш в конце адресов. Теперь страницы не будут доступны по двум адресам site.ru/product и site.ru/product/ , будет только вариант с / на конце url.

RewriteCond % !-f RewriteCond % !-d RewriteRule ^([^.]+)(?

Так же я всегда делаю переадресацию с домена с WWW на домен без WWW.

RewriteCond % ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Даже если в Битриксе включены ЧПУ, страницы все равно доступны с index.php на конце (site.ru/product/ и site.ru/product/index.php). Избавимся и от этого дублирования.

RewriteCond % ^(.*)/index\.php$ RewriteRule ^(.*)index\.php(.*)$ /$1$2 [R=301,L]

И напоследок добавим переадресацию с http на https (на разных хостингах она может настраиваться по разному, в данном случае точно работает на reg.ru).

RewriteCond % !on RewriteRule ^(.*)$ https://%% [L,R=301]

Вот мой итоговый файл .htaccess для Bitrix:

Options -Indexes ErrorDocument 404 /404.php php_flag allow_call_time_pass_reference 1 php_flag session.use_trans_sid off #php_value display_errors 1 #php_value mbstring.internal_encoding UTF-8 Options +FollowSymLinks RewriteEngine On RewriteCond % !-f RewriteCond % !-d RewriteRule ^([^.]+)(? ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] RewriteCond % ^(.*)/index\.php$ RewriteRule ^(.*)index\.php(.*)$ /$1$2 [R=301,L] RewriteCond % !on RewriteRule ^(.*)$ https://%% [L,R=301] RewriteCond % !-f RewriteCond % !-l RewriteCond % !-d RewriteCond % !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%] DirectoryIndex index.php index.html ExpiresActive on ExpiresByType image/jpeg "access plus 3 day" ExpiresByType image/gif "access plus 3 day" 

p.s.

Когда тестировал переадресацию с http на https в инфоблоках, у меня постоянно шла переадресация на /bitrix/urlrewrite.php думал, что где-то неправильно настраиваю.

Проверил работоспособность переадресации в режиме Инкогнито, увидел что все работает, поэтому все тесты лучше всегда проводить в режиме Инкогнито.

Что это было и почему так, разбираться не хочу.

Категории

Свежие записи

  • Как обновить версию Ruby на Mac OS
  • Многоязычный сайт на 1С-Битрикс
  • Перестал работать ChatGPT
  • Таблицы в админке WordPress (часть 1)
  • Импорт/экспорт Linux WSL
  • Не печатаются заглавные буквы в PowerShell

Правильный .htaccess для Битрикс(а)

Правильный .htaccess для Битрикс(а)

Редирект с www и index.php в Битриксе изначально не работает. Правильно настроенный htaccess для 1С Битрикс: Управление сайтом позволит повысить уровень индексации сайта поисковыми системами, избежать дублей страниц, увеличить производительность веб ресурса. Тут рассмотрим реализацию редиректа домена с www на без www и уберем дубли страниц index.php.

После установки системы 1С-Битрикс имеем данные в файле .htaccess (в корне сайта)

 Options +FollowSymLinks RewriteEngine On RewriteCond % !-f RewriteCond % !-l RewriteCond % !-d RewriteCond % !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%] 

Этот блок заменим следующим кодом

 Options +FollowSymLinks RewriteEngine On # Редирект с www на без www RewriteCond % ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] # Удаляем index.php из адреса RewriteCond % ^GET.*index\.php [NC] # Не применяем к админке, иначе перестает работать страница Highload-блоки RewriteCond % !/bitrix/admin/.* [NC] RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L] RewriteCond % !-f RewriteCond % !-d RewriteCond % !-f RewriteCond % !-l RewriteCond % !-d RewriteCond % !/bitrix/urlrewrite.php$ RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L] RewriteRule .* - [E=REMOTE_USER:%] 

Стандартный .htaccess для Bitrix

Оригинальный файл .htaccess для Bitrix будет полезен в том случае, если вы его случайно удалили или некорректно отредактировали.

О Bitrix

«Программные продукты «1С-Битрикс» – профессиональные системы управления веб-проектами: сайтами компаний, интернет-магазинами, социальными сетями и сообществами, корпоративными порталами».

Связаться с поддержкой 1С-Битрикс можно по телефону 88002501860 или через форму обратной связи на официальном сайте.
— 1c-bitrix.ru

Bitrix

Исходный код

Содержимое стандартного файла .htaccess для CMS Bitrix 12 (все редакции).

Options -Indexes
ErrorDocument 404 /404.php


php_flag session.use_trans_sid off
#php_value display_errors 1
#php_value mbstring.internal_encoding UTF-8


ExpiresActive on
ExpiresByType image/jpeg "access plus 3 day"
ExpiresByType image/gif "access plus 3 day"
ExpiresByType image/png "access plus 3 day"
ExpiresByType text/css "access plus 3 day"
ExpiresByType application/javascript "access plus 3 day"

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *