Angular и Bitrix. Настройка htaccess
Запись от 03.05.2017
Данная настройка подойдет для single page application на случай, если правила обработки адресов не будут использоваться.
Редактировать будем только секцию с «mod_rewrite.c». Вот так она выглядит по умолчанию:
А вот так будет выглядеть, для angular приложения (индексный файл в формате php):
Таким образом будут доступны все статические ресурсы, админка битрикса, а все пути роутинга angular-приложения переходят на index.php.
А вот решение из официальной документации: https://angular.io/docs/ts/latest/guide/deployment.html#!#production-servers
Редактировать будем только секцию с «mod_rewrite.c». Вот так она выглядит по умолчанию:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
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>
А вот так будет выглядеть, для angular приложения (индексный файл в формате php):
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^ - [L]
RewriteRule ^ /index.php
</IfModule>
Таким образом будут доступны все статические ресурсы, админка битрикса, а все пути роутинга angular-приложения переходят на index.php.
А вот решение из официальной документации: https://angular.io/docs/ts/latest/guide/deployment.html#!#production-servers