igorek-art 35 Опубликовано: В четверг в 11:00 Рассказать Опубликовано: В четверг в 11:00 Всем привет. Подскажите, пожалуйста, где настраивается страничка ошибки 404? Точнее вопрос перефразирую. У меня на сайте А есть файл в корне 404.html, в настройках скрипта включена галочка странички 404 и стоит галочка обрабатывать неверные адреса.. Все ок, при запросе https://сайтАА/randompage все пишет нормально ошибка 404 и выводит ту страничку, которую я сделал... Теперь есть ресурс Б, на нем сделано все ровным счетом точно так же, и настройка в админке, и отдельный файлик 404.html, но вот на ресурсе Б при заходе на https://сайтББ/randompage уже не выдает ошибку 404, ну а якобы отображает страничку на которой ничего нет, НО если есть новость например https://сайт/randompage.html а я пытаюсь набрать https://сайт/randomSpage.html то в данном случае он мне выдает ошибку 404. не могу понять какую галочку я не потыкал или что не правильно сделал, что на ресурсе Б некорректно работает 404 Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: В четверг в 11:55 Рассказать Опубликовано: В четверг в 11:55 51 минуту назад, igorek-art сказал: но вот на ресурсе Б при заходе на https://сайтББ/randompage уже не выдает ошибку 404, ну а якобы отображает страничку на которой ничего нет, НО если есть новость например https://сайт/randompage.html а я пытаюсь набрать https://сайт/randomSpage.html то в данном случае он мне выдает ошибку 404. Это означает что DLE не считает данную страницу, страницей на которой нет контента. Например используются теги {custom ....} без каких то лимитов и ограничений в шаблоне, а это контент. DLE вызовет 404 ошибку только если нет контента, а контент это не только тег {content}, но и {custom ....} потому что например многие выводят в категориях при просмотре кратких не новости а например подменю, или пользовательский вывод и так далее. Поэтому искать причину проблему нужно в логике формирования своего шаблона. Ссылка на сообщение Поделиться на других сайтах
igorek-art 35 Опубликовано: В четверг в 12:11 Рассказать Опубликовано: В четверг в 12:11 Автор 2 минуты назад, celsoft сказал: Поэтому искать причину проблему нужно в логике формирования своего шаблона. Ну я примерно это предполагал.. Но сейчас посмотрел структуру шаблона и не совсем понимаю тогда.. По сути у меня в шаблоне main.tpl если убрать весь лишний код то такое.. [available=main]{custom}{content}[/available] [available=cat] [category=1]{custom}{content}[/category] [category=2]{content}[/category] [/available] [available=остальное]{custom}{content}[/available] То есть вне тегов этих нет никаких ни {custom} ни {content}. А за что он тогда воспринимает эту страничку https://halyavaitochka.ru/randompage ?? Это как категория или как главная для движка? По идее же вот на этой страничке там моих тегов не должно вообще нигде быть ни {custom} ни {content}. Ну единственное что может быть то на всех страничках есть {login} он вне тегов вообще. Может ли это влиять? Хотя тоже нет, сейчас его удалил для теста и все равно ничего не произошло. Хм, ну а просто html код движок же не считает за контент? Вот например если эту страничку https://halyavaitochka.ru/randompage с помощью исходного кода посмотреть, то там почти весь код пустой (не считая pop-up окошек, но все они без тегов, чистый текст да html. В какую часть структуры шаблона тогда смотреть?(( Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: В четверг в 20:26 Рассказать Опубликовано: В четверг в 20:26 8 часов назад, igorek-art сказал: А за что он тогда воспринимает эту страничку https://halyavaitochka.ru/randompage ?? Это как категория или как главная для движка? Это адрес категории соответственно под нее попадает все что касается показа категорий. Ссылка на сообщение Поделиться на других сайтах
alex32 943 Опубликовано: вчера в 02:59 Рассказать Опубликовано: вчера в 02:59 А, допустим, такой адрес https://site.ru/?H7ls=leK3 не отдает 404, отдает главную. Набор букв и цифр совершенно хаотичный (из-за таких массовых заходов Бегет врубил ограничения и главная стала отдавать 503) Это как на 404 перенаправлять? Я сделал через раздел редиректы, но там 301 или 302, а это не совсем правильно, как мне кажется Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: вчера в 05:42 Рассказать Опубликовано: вчера в 05:42 2 часа назад, alex32 сказал: такой адрес https://site.ru/?H7ls=leK3 не отдает 404, отдает главную. Потому что это и есть главная. То что вы отправили набор левых данных на страницу о которых никому не известно, это не меняет страницу. Например https://ya.ru/?H7ls=leK3 к удивлению тоже открывается главная ))) а не 404 и нет никаких редиректов ))) 2 часа назад, alex32 сказал: Набор букв и цифр совершенно хаотичный (из-за таких массовых заходов Бегет врубил ограничения и главная стала отдавать 503) Без параметров 503? В таком случае нужно предьявлять претензии хостингу. 2 часа назад, alex32 сказал: Это как на 404 перенаправлять? Я сделал через раздел редиректы, но там 301 или 302, а это не совсем правильно, как мне кажется Во первых перестать страдать ерундой и изучить что такое канонические ссылки. DLE именно использует канонические ссылки, чтобы мусор не попадал куда не нужно. И не все делается редиректами. Ссылка на сообщение Поделиться на других сайтах
alex32 943 Опубликовано: вчера в 06:11 Рассказать Опубликовано: вчера в 06:11 19 минут назад, celsoft сказал: Без параметров 503? В таком случае нужно предьявлять претензии хостингу. Ну это бегет так сделал, не я же. Вопрос не стоит в том, что будет мусор в поисковике и что такое каноническая ссылка я прекрасно знаю. Но вот из-за этого: пришлось делать редирект таких запросов на 404, что бы не грузилась главная, исключительно для снятия нагрузки. После проделанного, хостинг снял ограничение, но ведь по факту то страниц с такими GET-параметрами на сайте нет, так почему должна главная грузиться? Логично же, что page not found Ссылка на сообщение Поделиться на других сайтах
igorek-art 35 Опубликовано: вчера в 06:33 Рассказать Опубликовано: вчера в 06:33 Автор 10 часов назад, celsoft сказал: Это адрес категории соответственно под нее попадает все что касается показа категорий. Подскажите, а include например считается за контент например такое {include file="engine/modules/cities.php"} ??? Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: вчера в 07:21 Рассказать Опубликовано: вчера в 07:21 1 час назад, alex32 сказал: Ну это бегет так сделал, не я же. Вопрос не стоит в том, что будет мусор в поисковике и что такое каноническая ссылка я прекрасно знаю. Но вот из-за этого: Это сообщение о блокировки из за нагрузку, а не из за адреса, если будет атака на главную? Дальше что? Блокировать главную будете? С нагрузкой нужно боротся блокируя тех кто создает нагрузку, а не с адресами. 47 минут назад, igorek-art сказал: Подскажите, а include например считается за контент например такое {include file="engine/modules/cities.php"} ??? Это подключение стороннего модуля и все зависит от того что модуль делает и как вмешивается в данные которые использует DLE Ссылка на сообщение Поделиться на других сайтах
igorek-art 35 Опубликовано: вчера в 08:51 Рассказать Опубликовано: вчера в 08:51 Автор 1 час назад, celsoft сказал: Это подключение стороннего модуля и все зависит от того что модуль делает и как вмешивается в данные которые использует DLE Вообщем сделал копию шаблона и начал все удалять постепенно и вот что выяснил: если в шаблоне есть такие теги [category=1]код для первой категории[/category] и такой [category=2]код для второй категории[/category] то из-за этого и происходит то, что я написал в начале темы. Если использовать только теги [available=cat][/avaiable] без тега [category=N] то все в итоге обрабатывается нормально как положено и скрипт выдает в том месте 404 ошибку.. А как бы этого избежать? Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: 21 час назад Рассказать Опубликовано: 21 час назад 12 часов назад, igorek-art сказал: А как бы этого избежать? Не из за этого это у вас, либо вы привели некорректый пример, а не реальное значение. Потому как во первых играет роль не теги, а содержание в них, то есть другие теги, соответственно текст "код для второй категории" не заставит DLE считать что есть наличие контента, во вторых теги [category=1] и [category=2] не выведут ничего при просмотре абстрактной несуществующей категории. Так что по вашему описанию ничего нельзя сказать, ваш пример и ваше умозаключение в данном случае некорректно. Поэтому копайте внутрь тегов, а не сами теги как таковые. Есть такое понятие как порядок обработки, какие то теги выполняются раньше, какие то позже, скрипт не может выполнить все однооменто и теги [category=1] далеко не приоритетные в порядке их выполнения. Например если вы поставите тег {custom ...} да и еще и в main.tpl, то он выполнится раньше чем теги [category=1] потому что глобальные теги приоритетнее чем шаблонные от шаблона, и DLE нужно понять что вывод контента есть чтобы сформировать main.tpl не отдав 404 код, соответственно даже если позднее вы его скроете через [category=1...] для DLE это не сделает контент несуществующим, он его уже его обработал и он есть для него. Соответственно чтобы не видеть пустую страницу по итогу, нужно делать загрушки противоположными тегами [not-category=1,2] тут ничего нет [/not-category] если будут другие отличные от указанных категорий. А если говорить о приоритетах порядка выполнения тегов, то такие же глобальные, например available приоритетнее {custom ...} соответственно если тег будет в них и не будет выполнено условие то и тег не будет выполнен, и контента не будет. Ссылка на сообщение Поделиться на других сайтах
igorek-art 35 Опубликовано: 7 часов назад Рассказать Опубликовано: 7 часов назад (изменено) Автор 13 часов назад, celsoft сказал: Не из за этого это у вас, либо вы привели некорректый пример, а не реальное значение. Потому как во первых играет роль не теги, а содержание в них, то есть другие теги, соответственно текст "код для второй категории" не заставит DLE считать что есть наличие контента, во вторых теги [category=1] и [category=2] не выведут ничего при просмотре абстрактной несуществующей категории. Так что по вашему описанию ничего нельзя сказать, ваш пример и ваше умозаключение в данном случае некорректно. Поэтому копайте внутрь тегов, а не сами теги как таковые. Есть такое понятие как порядок обработки, какие то теги выполняются раньше, какие то позже, скрипт не может выполнить все однооменто и теги [category=1] далеко не приоритетные в порядке их выполнения. Например если вы поставите тег {custom ...} да и еще и в main.tpl, то он выполнится раньше чем теги [category=1] потому что глобальные теги приоритетнее чем шаблонные от шаблона, и DLE нужно понять что вывод контента есть чтобы сформировать main.tpl не отдав 404 код, соответственно даже если позднее вы его скроете через [category=1...] для DLE это не сделает контент несуществующим, он его уже его обработал и он есть для него. Соответственно чтобы не видеть пустую страницу по итогу, нужно делать загрушки противоположными тегами [not-category=1,2] тут ничего нет [/not-category] если будут другие отличные от указанных категорий. А если говорить о приоритетах порядка выполнения тегов, то такие же глобальные, например available приоритетнее {custom ...} соответственно если тег будет в них и не будет выполнено условие то и тег не будет выполнен, и контента не будет. Вы не совсем поняли меня или я вас. У меня вот сейчас в тестовом шаблоне (я весь код удалил) оставил лишь такое [available=cat] <div class="ggggg"> [category=1]{custom}{info}{content}[/category] [category=2]{info}{content}[/category] </div> [/avaiable] Зайдя в категорию 1 я вижу {custom}{info}{content}, а зайдя в категорию 2 я вижу {info}{content}. Зайдя в выдуманную категорию я вижу просто кусок шаблона <div class="gggg"></div> и тут нет 404. Но, если я сделаю шаблон так [available=cat] <div class="ggggg"> {custom}{info}{content} </div> [/avaiable] То начинает работать все корректно. Вот полный код того, что сейчас [available=cat] [category=1] <div class="low"></div> <div class="low"></div> <div class="zhiz"> <div class="more_order_adress"> <div class="text">Акции выбранного предприятия<br><span class="adress_name">{include file="engine/modules/select-city.php"}</span></div> [group=5]<div class="button_advert">[/group] [not-group=5]<div class="button_advert1">[/not-group] <a class="show-adress" data-popup="popup-adress" href="javascript:;" title="Сделать заказ">Другое</a> </div> </div> </div> <div class="los"></div> <div class="promo"> <div class="">Промокод</div> <div class=""><input required id="promo" name="promo" type="promo" placeholder="Есть промокод? Введи!"></div> </div> <div class="mainfull_sale"> <div class="calendar_sale"><a class="show-error" data-popup="popup-error" href="javascript:;" title="Календарь скидок"><img alt="Календарь скидок" src="{THEME}/images/calendar_sale.webp" width="500" height="249" style="width: 100%; height: auto;"></a></div> <div class="titleBarsale"> <span>Специальная акция</span> </div> <div class="lows"></div> {custom id="6" available="global"} <div class="titleBarsale"> <span>Актуальные акции</span> </div> <div class="lows"></div> {info}{content} </div> [/category] [category=2] <div class="mainfull"> [group=5] <div class="low"></div> <div class="wowsy"> <div><p>Важная информация!</p></div> <div>Если Вы решились, обязательно авторизуйтесь на нашем сайте, только так он примет вид мобильного приложения наших созвучных друзей и будет полной его копией для нашего плана!</div> </div> <div class="more_order_adress"> <div class="text">Заказы выбранного предприятия<br><span class="adress_name">{include file="engine/modules/select-city.php"}</span></div> <div class="button_advert"><a class="show-adress" data-popup="popup-adress" href="javascript:;" title="Сделать заказ">Другое</a></div> </div> [/group] [not-group=5] <div class="lowtown"></div> [/not-group] <div class="low"></div> {info}{content} </div> [/category] [/available] То есть, как я понял теперь уже, с ваших слов, если человек попадает ко мне в ЛЮБУЮ категорию ну то есть в тег [available=cat][/available] то что получается? Сперва ему грузится {custom}{content} и только после этого уже обрабатывается [category=1][/category]? Изменено 7 часов назад пользователем igorek-art Ссылка на сообщение Поделиться на других сайтах
celsoft 6216 Опубликовано: 7 часов назад Рассказать Опубликовано: 7 часов назад 26 минут назад, igorek-art сказал: Вы не совсем поняли меня или я вас. Я как раз таки понял, и подробно описал в последнем сообщении, что видно даже сейчас по вашему коду. Вернитесь к сообщению, прочитайте внимательно, если не поймете еще раз прочитайте. Ответ там дан. У вас стоит [available=cat] разрешена любая категория соответственно выполнится {custom...} в любом случае, потому как ваши теги базового шаблона [category=1] что "мертвому припарка" для глобальных тегов, они просто уже "потом" скроют визуально, но не запретят выполнение. Читайте внимательно выше про приоритет выполнения. 31 минуту назад, igorek-art сказал: Сперва ему грузится {custom} и только после этого уже обрабатывается [category=1][/category]? Да. Потому что {custom} глобальный тег для всех шаблонов, а [category=1][/category] локальные от main.tpl. Сначала выполняются глобальные теги, потом локальные в main.tpl Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас