nanny_ogg
@nanny_ogg
My name is Masha. I'm from Russia

Что означает участок кода?

на хостинге в папке public_html лежат папки и файлы сайта, также там находится папка с файлами, отвечающая за поддомен. сайт на основном домене на битриксе, на поддомене непонятно на чем. в корне сайта есть файл .htaccess, где есть кусок
<IfModule mod_rewrite.c>
	Options +FollowSymLinks
	RewriteEngine On

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

	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>

Вся проблема в том, что поддомен работает только если удалить этот кусок. Если его оставить, не подключается вообще ни один файл стилей и скриптов. Что в этой части происходит, кто-нибудь может разъяснить? И можно ли невозбранно удалить это место или что-то исправить надо, чтоб работало?
  • Вопрос задан
  • 130 просмотров
Пригласить эксперта
Ответы на вопрос 1
@cybernetic
RewriteCond %{HTTP_HOST} ^www\.example\.ru$ [NC]
  RewriteRule ^(.*)$ http://example.ru/$1 [R=301,L]

Это редирект с сайта "www.example.ru" на "example.ru" для SEO, можно удалить, но думаю проблема не в нем

RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]

А этот код для работы ЧПУ Битрикса, если удалить то будут проблемы с ЧПУ. Предположительно проблема тут, но как сделать чтобы этот код не срабатывал на поддомене я не знаю, как-то перебить нужно...

Попробуйте на поддомене создать в корне такой же файл но с этим содержимым
<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine Off
</IfModule>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы