Рейтинг: 0  
Новая
Предложил Древецкий Борис 06.10.2020 09:50:12

Глобальная настройка 404 ошибки для компонентов

Добавить глобальную настройку 404 ошибки для стандартных компонентов ядра в настройки сайта.
- Устанавливать статус 404;
- Показ специальной страницы;
- Страница для показа (по умолчанию /404.php).
Рейтинг: 0.6191  
На голосовании
Предложил Кирсанов Анатолий 25.07.2017 00:53:13

Поддержка отложенного выбора шаблона сайта

В настоящий момент есть всего один штатный способ определить шаблон сайта - настройки сайта.

Также можно поиграть с предикатами для шаблонов на основе констант, определяемых до подключения Битрикс (наиболее прямой путь здесь вообще SITE_TEMPLATE_ID, но тогда настройки сайта не требуются вовсе).

Главным образом идея возникла из-за страницы ошибки 404. Да, по ней уже сломано немало копий (1, 2). Не так давно и Битрикс предложила "решение" и даже отчиталась о внедрении соответствующей идеи.

Увы, при таком подходе буфер вывода частично (как в \Bitrix\Iblock\Component\Tools::process404) или полностью очищается, делая ненужной работу части страницы. А Битрикс итак тяжел из-за обилия функционала. Стоит ли делать лишнюю работу?

Есть прямой путь для решения такой и других проблем со сменой шаблона сайта уже после его выбора по настройкам сайта - явная установка шаблона на d7. Да так, чтобы эта установка сработала и в конце страницы.

Альтернативы "для старта":
  • Программная установка шаблона сайта на d7 до вывода визуального пролога (API для этого).
  • Событие (старое или новое на d7) для участия в выборе шаблона сайта.

Но их есть смысл делать только если планировать завершить дело отложенным выбором шаблона сайта. Тогда не придется городить огород с описанными выше решениями. Да и красиво упакованный в process404 костыль от Битрикс тоже будет не очень то и нужен.

По мотивам обращения в поддержку 1562681.
Рейтинг: 0  
На голосовании
Предложил Чураков Роман 05.04.2017 13:53:05

404 для форума

Здравствуйте. Как можно на форуме настроить 404 ошибку? Если тема не существует, выводить 404, а не "Тема не найдена", если группа не существует, выводить 404, а не список всех форумов. На форуме для разработчиков вижу такую же ситуацию https://dev.1c-bitrix.ru/community/forums/group999999999999/  
Рейтинг: 4.7818  
На голосовании
Предложил Игошев Дмитрий 04.11.2016 11:11:38

Отдавать 403 если нет прав на чтение элемента ИБ

Если у пользователя нет прав на чтение элемента/секции ИБ отдавать код ответа 403, а не 404 как сейчас.
По аналогии с public static function process404(){}, можно сделать public static function process403(){} или объединить их в public static function processErrorCode(){}.
Рейтинг: 0.3366  
На голосовании
Предложил Smirnov Pavel 03.11.2015 13:06:44

В облачном Битрикс24 оформить страницу 404 в дизайне Битрикс24 и добавить ссылки с неё на портал.

Страница "не найдено". Например,

http://xxx.bitrix24.ru/404 - сейчас оформлена как

"404 Not Found nginx/1.0.15" чёрным шрифтом на белом фоне, и ничего больше.

Было бы лучше, если бы эта страница хотябы отдалённо напоминала по дизайну Битрикс24 (хотябы цветовой гаммой и надписью "Битрикс24" ).

Кроме того, было бы удобнее, если бы с такой страницы была ссылка хотябы на главную страницу того же портала Битрикс24 (в случае из примера - на страницу http://xxx.bitrix24.ru/ ).

Хорошо бы и ещё какой-то текст с описанием возможных причин возникновения ошибки человеческим языком (ведь большинство пользователей Битрикс24 скорее не программисты, чем программисты).

Ссылки по теме дизайна 404-х страниц и надписей на них:

http://www.smashingmagazine.com/2009/06/effective-maintenance-pages-examples-and-best-practices/
http://www.smashingmagazine.com/2007/07/25/wanted-your-404-error-pages/
http://www.smashingmagazine.com/2007/08/17/404-error-pages-reloaded/
http://www.smashingmagazine.com/2009/01/29/404-error-pages-one-more-time/
Рейтинг: 0  
Внедрено
Предложил Неудахин Артур 17.09.2012 13:56:54

Настроить 404 ошибку в инфоблоках при отсутствии элемента или раздела.

Это уже оказывается реализовано.
Сорри.
Рейтинг: 18.0426  
На голосовании
Предложил Рычагов Сергей 01.03.2012 16:04:54

Массовый редирект при переезде на новую CMS

Столкнулся с такой проблемой. При переезде с какой-то CMS на 1c-bitrix возникает проблема сохранения старых страниц (сохранения старых адресов, а значит - настройки редиректа). Об этом подробно написано в 86-ой рассылке СЕОПУЛЬТа
http://seopult.ru/subscribe.html?id=86
а именно:
Выходом из данной ситуации может стать динамический редирект. Но это решение требует определенных навыков программирования, и новичку оно будет не под силу. Для создания динамического 301 редиректа потребуется написание специального кода, например, на языке PHP. Затем в файл .htaccess вводится строка, которая вызывает файл с написанным кодом. В задачу этой программы уже входит совмещение старого URL с новым и перенаправление пользователя на новые страницы.
Хотелось бы получить функционал в панели управления, основная задача которого в поле формы введение старого адреса (который работал на старой CMS) введение нового адреса страницы (на 1с-битрикс). Таким образом мы создаём большой список старых и новых адресов (список зависит от размеров самого сайта). Тогда получается, что адреса будут сохранены. Сейчас действительно, как написано в рассылке, приходиться делать это с помощью файла .htaccess - крайне неудобно.  
Рейтинг: 73.6589  
Внедрено
Предложил Роман Забродин 17.01.2012 13:49:25

Сделать так чтобы при обращении через URL к любому НЕсуществующему объекту открывалась единая страница 404 и ее шаблон должен настраиваться.

Сделать так чтобы при обращении через URL к любому НЕ существующему объекту (элемент, раздел, инфоблок, пользователь, группа соцсети, файл, тема форума, форум, блог, итд итп) открывалась единая страница 404 и ее шаблон можно было настраивать, причем, неверный адрес должен сохраняться чтобы была возможность исправить ошибку ввода URL.

Сейчас одни компонненты отображают сообщение, другие переопределяют константу ERROR_404, иные вообще эту ситуацию тупо не обрабатывают.

Необходимо навести порядок раз и навсегда.

Идея навеяна записей в блоге , неоднократным обсуждением на форуме и постами в блогах разработчиков.
Рейтинг: 6.558  
Ответил 30.06.2015 11:45:17
Внедрено в новом релизе 15.5 - спасибо за идею.