Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 21 Ответов
  • 1676 Просмотров
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
Здравствуйте! Помогите пожалуйста!
Установлены Joomla 4.4.2, shaper_helixultimate 2.0.13.

Не существующие страницы возвращают код 404 Not Found только в том случае, если адрес имеет расширение .php. Во всех остальных случаях возвращается код 200 OK и идет перенаправление на главную страницу сайта, например:
https://www.aet-group.ru/prod/pokrytieppp.html   код 200 OK
https://www.aet-group.ru/prod/pokrytieppp.php   код 404 Not Found
https://www.aet-group.ru/pokrytieppp   код 200 OK
https://www.aet-group.ru/prod/   код 200 OK

Если перед несуществующим файлом указан существующий раздел, то перенаправление идет не на главную страницу, а на этот раздел, то есть на уровень выше, например:
https://www.aet-group.ru/production/jhkll

Почему это происходит, как исправить?
Спасибо.
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Вероятно, так роутер вашего компонента настроен. Он парсит ссылку пока может. А на остальное не обращает внимание (на нераспарсенный хвост ссылки).
Исправить можно в парсере роутера, добавив генерацию 404 ошибки, в случае, если остались недопарсенные секции ссылки.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
sivers, спасибо! Только я не очень понимаю, что такое парсер роутера. Можно поподробнее, что конкретно нужно сделать?
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
в папке компонента открыть файл router.php и посмотреть что там
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
В шаблоне нужно править файл error.php убирать перенаправление и отдавать 404 код ответа
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
sivers, поиском нашлось 15 файлов router.php. О каком компоненте речь?

ProtectYourSite, исходный error.php заменен, вот его текст:
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
if($this->error->getCode() == '404'){
    header("HTTP/1.1 404 Not Found");
    echo file_get_contents(JURI::root().'error-404');
    exit;
}

И дополню: правильный код ошибки 404 отдают не только адреса с расширением .php, но также и .txt, .img, .htm (но не .html).
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
sivers, поиском нашлось 15 файлов router.php. О каком компоненте речь?
Который выводит товары у вас. Не может причина и не в роутере, но проверить стоит.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
sivers, если товары - то это com_hikashop. Я совершенно не разбираюсь в коде router.php . Помогите пожалуйста.
« Последнее редактирование: 22.01.2024, 22:23:17 от catsub »
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
Вдогонку - там не только hikashop неправильно работает, там и sp page builder, и вывод простого материала - все работает неправильно. Если не в роутере, то в чем еще может быть причина?
Старая версия сайта, на joomla 3, коды ответа сервера возвращала правильные.
« Последнее редактирование: 22.01.2024, 22:25:20 от catsub »
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
В верхней части файла подправьте метод parse
Код
      public function parse(&$segments) {
         $vars = _HikashopParseRoute($segments);

         // Проверка валидности ссылки
         $validLink = Route::_('index.php?'.http_build_query($vars));
         $validLink = explode('?', $validLink)[0];
         $parseLink = explode('?', $_SERVER['REQUEST_URI'])[0];
         if($parseLink != $validLink){
             throw new \Exception('Not Found', 404);
         }
         
         return $vars;
      }

Сверху после defined('_JEXEC') or die('Restricted access'); добавьте строку
Код
use Joomla\CMS\Router\Route;

Проверьте ссылки. Если не поможет или что-то сломается - верните как было.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Вдогонку - там не только hikashop неправильно работает, там и sp page builder, и вывод простого материала - все работает неправильно. Если не в роутере, то в чем еще может быть причина?
Старая версия сайта, на Joomla 3, коды ответа сервера возвращала правильные.
Тогда скорее всего причина не в роутере.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов

ProtectYourSite, исходный error.php заменен, вот его текст:
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
if($this->error->getCode() == '404'){
    header("HTTP/1.1 404 Not Found");
    echo file_get_contents(JURI::root().'error-404');
    exit;
}

Попробуйте в этом файле вывести произвольный текст( это лучше тестить без кеширования). Если текст выведется, то надо проверять условия и от этого подгонять, иначе все таки дело в роутере выходит
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
sivers, сделала, как Вы сказали, проверила - без результата, вот начало файла:

<?php
/**
 * @package   HikaShop for Joomla!
 * @version   4.7.5
 * @author   hikashop.com
 * @copyright   (C) 2010-2023 HIKARI SOFTWARE. All rights reserved.
 * @license   GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\Router\Route;
?><?php

$jversion = preg_replace('#[^0-9\.]#i','',JVERSION);
if(version_compare($jversion,'4.0.0','>=')) {
   class hikashopRouter extends Joomla\CMS\Component\Router\RouterBase {

      public function build(&$query) {
         return _HikashopBuildRoute($query);
      }

      public function parse(&$segments) {
         $vars = _HikashopParseRoute($segments);

         // Проверка валидности ссылки
         $validLink = Route::_('index.php?'.http_build_query($vars));
         $validLink = explode('?', $validLink)[0];
         $parseLink = explode('?', $_SERVER['REQUEST_URI'])[0];
         if($parseLink != $validLink){
             throw new \Exception('Not Found', 404);
         }
         
         return $vars;
      }

   }
}

ProtectYourSite, вставила текст, он выводится, когда чтраница возвращает код 404. Но проблема-то в том, что несуществующие страницы возвращают код 200, в этих случаях обращения к error.php нет.
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Значит не в роутере дело.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
День добрый! Совсем больше никаких мыслей? :o
А Вы можете рассказать, в каком месте, в каком файле формируется перенаправление несуществующей страницы на главную?
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
начните проверять с .htaccess
переименуйте и поставьте дефолтный.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
sivers, сделала. Ничего не изменилось. Пробовала также поменять на .htaccess от старой версии сайта, в которой коды ответа формируются правильно - тоже ничего не поменялось.
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
Alex_gs, Ваша ссылка рассказывает про создание страницы 404. Но моя проблема в другом - несуществующие страницы возвращают код 200, а не 404. То есть обращения к странице 404 не происходит вообще. К тому же моя страница 404 уже создана именно по этой методике.
*

ProtectYourSite

  • Живу я здесь
  • 2364
  • 137 / 4
  • Безопасность вебсайтов
Ну как говорил выше, значит проблема в роутере, необходимо понимать, какой компонент так обрабатывает и в нем искать решение.
Есть еще небольшая гипотеза, что проблема в шаблоне и его плагинах, попробуйте воспроизвести проблему на стандартном шаблоне (желательно взять чистую Joomla и компонент магазина, без посторонних плагинов)
*

catsub

  • Захожу иногда
  • 76
  • 0 / 0
Уф, проблема решена. Да, она была в роутере. Точнее в двух роутерах - в компонентах hikashop и в sp page builder. sivers, после того, как подправила метод parse также и в sp page builder, то есть в сумме правила два файла, сервер стал отдавать правильные ответы.

Всем большое спасибо за помощь!
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Уф, проблема решена.
С чем Вас и поздравляю! )
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как всё-таки создать страницы сайта на Joomla?

Автор donaire

Ответов: 4
Просмотров: 724
Последний ответ 14.02.2025, 12:22:41
от Tavol
Torbo страницы для Joomla 4

Автор Serebro2009

Ответов: 6
Просмотров: 823
Последний ответ 17.10.2024, 17:39:37
от web1
Отменить разбиение на страницы

Автор willart

Ответов: 9
Просмотров: 819
Последний ответ 27.04.2024, 21:10:43
от web1
Как убрать слово "ГЛАВНАЯ" с главной страницы?

Автор Северянин23

Ответов: 2
Просмотров: 903
Последний ответ 10.12.2023, 14:00:55
от Северянин23
Турбо-страницы и редактирование CSS

Автор Serebro2009

Ответов: 1
Просмотров: 540
Последний ответ 07.11.2023, 18:34:21
от Serebro2009