Как убрать редирект с порта в Bitrix и сохранить порт в URL
При работе с CMS «1С-Битрикс» на нестандартном порту (например, 4303) часто возникает проблема: при переходе по адресу site.ru:4303/bitrix происходит автоматический редирект на site.ru/bitrix (без порта). Это мешает доступу к административной панели и может нарушить работу сайта. В этой статье мы разберём основные причины такого поведения и дадим пошаговые инструкции по исправлению.
Почему происходит редирект с порта в Битрикс?
Чаще всего редирект вызван неправильной настройкой виртуальных хостов веб-сервера (Apache или Nginx), а также конфликтом с правилами mod_rewrite в файле .htaccess. Стандартный .htaccess от Bitrix не содержит явного редиректа порта, но сервер может перенаправлять запросы, если порт не указан в конфигурации виртуального хоста.
Проверка конфигурации Apache (VirtualHost)
Первым делом откройте конфигурационный файл виртуального хоста Apache. Убедитесь, что директива ServerName включает порт, например:
ServerName site.ru:4303
DocumentRoot /path/to/site
...
Если порт не указан, Apache может перенаправлять запросы на стандартный 80-й порт. После изменения не забудьте перезапустить Apache: sudo systemctl restart apache2.
Проверка и корректировка .htaccess
Ваш текущий .htaccess не содержит правил редиректа порта, однако убедитесь, что нет внешних правил в корневом .htaccess или в файле /bitrix/.htaccess. Также проверьте, что в .htaccess нет строк вида:
RewriteCond %{SERVER_PORT} !^4303$
RewriteRule ^(.*)$ http://site.ru:4303/$1 [R=301,L]Если такие правила есть - удалите их. Для надёжности добавьте в начало .htaccess следующую строку, чтобы явно разрешить порт:
RewriteCond %{SERVER_PORT} ^4303$Настройка URL-rewrite в Битрикс
Иногда проблема кроется в файле /bitrix/urlrewrite.php. Откройте его и проверьте, нет ли там редиректа на домен без порта. Обычно этот файл не содержит таких правил, но для уверенности временно закомментируйте все header() и проверьте поведение.
Очистка кеша и куки
После всех изменений очистите кеш браузера и куки. Старые редиректы могли кешироваться браузером. Также очистите системный кеш Bitrix через административную панель (если доступна) или через файл /bitrix/cache.
Альтернативные причины
- Прокси-сервер или балансировщик - если сайт работает через обратный прокси (например, Nginx), проверьте его конфигурацию на предмет перенаправления портов.
- SSL-сертификат - если используется HTTPS на порту 443, а запрос идёт на HTTP, может происходить редирект. Убедитесь, что протоколы совпадают.
- Плагины или модули - некоторые модули Bitrix (например, «Мультисайтовость») могут перенаправлять запросы. Временно отключите их для теста.
Заключение
Чтобы убрать редирект с порта в «1С-Битрикс», последовательно проверьте конфигурацию виртуального хоста Apache, файл .htaccess и настройки URL-rewrite. В большинстве случаев проблема решается добавлением порта в ServerName и удалением лишних правил редиректа. Если ничего не помогает, обратитесь к логам сервера (error.log) - они укажут точную причину перенаправления.