Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

Duns63

  • Новичок
  • 5
  • 0 / 0
Здравствуйте!
Изучаю проблему уже достаточно долго, продвинулся в решении, но потом уперся в стену. Найти ифу пока не могу (да и надоело уже ковыряться в IIS), нужна помощь.

Суть проблемы:
Сайт на Joomla 1.5.23
Веб-сервер IIS7.5

Все бы ничего, да вот решил начать СЕО оптимизацию. И началось ))

Простое включение СЕО настроек в Joomla ничего, конечно, не дало. Правил-переправлял .htaccess - бесполезно. Порылся в инете. Поставил на сервер модуль URL Rewrite. Импортировал в него правила из .htaccess- все проглотил за исключением
"RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]" - говорит
"<!--The rule cannot be converted into an equivalent IIS format because of unsupported flags: E-->" - ну хрен с ним, заккоментировал и применил. Все ОК. СЕО в Joomla начало как-то корявенько работать, правда только без включенного mod_rewrite (хотя он вроде как для apache только используется, так что бог с ним), иначе при включении этого модуля все внутренние ссылки по сайту приводят на главную страницу, хотя в адресной строке прописывается нужная страница...

Теперь имею две проблемы, которые не могу самостоятельно решить:

1. категорически не хочет открываться главная страница mysite.com - ошибка 404, исключительно только mysite.com/index.php

2. все адресные строки имеют вид http://www.mysite.com/index.php/forum например, то есть везде присутствует этот чертов index.php. А дополнительная вложенность для СЕО вроде бы как-то не очень полезна..

Как это все возможно победить?
Просьба знающих людей откликнуться!

заранее предвидя вопросы, выкладываю .htacces

Код
##
# @version $Id: htaccess.txt 14401 2010-01-26 14:10:00Z louis $
# @package Joomla RE
# @localized Авторские права (C) 2005 - 2010 Joom.Ru - Русский дом Joomla! Все права защищены.
# @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! - свободное программное обеспечение.
# Последнее изменение этого файла - 01.05.2010
##

#  Установка кодировки сайта по умолчанию. При необходимости, закомментируйте.
#  Строка решает проблему с "крякозябрами" в редакторе TinyMCE и текста лицензии при установке
#  на Денвере и некоторых серверах с жестко прописанной кодировкой. Это на 99,9% работающее решение.
#  После переименования этого файла htaccess.txt в .htaccess проблема решится.
#  Если проблема осталась - перечитайте предыдущее предложение (возможно неправильно переименовали).

AddDefaultCharset utf-8

#  Следующие строки - попытка исправить настройки PHP
#  для полного соответствия системным требованиям Joomla.
#  Раскомментируйте (символ комментария - #) нужные строки,
#  если настройки вашего хоста не соответствуют рекомендациям
#  системных требований Joomla.
#  При возникновении 500 ошибки сервера, закомментируйте строку, вызывающую
#  ошибку, или все строки с php_flag.

#  php_flag register_globals Off
#  php_flag display_errors Off
#  php_flag file_uploads On
#  php_flag allow_url_fopen off
#  php_flag magic_quotes_gpc On
#  php_flag magic_quotes_runtime Off


#  Пример явного указания каталога для записи сессий:
#  Для Windows - c:/temp
#  для UNIX  - /tmp

#  Указанный каталог должен физически существовать и быть доступен для записи

#  При необходимости, раскомментируйте строку ниже этой
#  php_value session.save_path c:/temp

#####################################################
#  ПРОЧТИТЕ ПОЛНОСТЬЮ, ЕСЛИ БУДЕТЕ ИСПОЛЬЗОВАТЬ ЭТОТ ФАЙЛ
#
# Строка ниже этого раздела: 'Options +FollowSymLinks' может вызвать проблему
# при некоторых конфигурациях сервера. Она необходима для использования модуля
# Apache mod_rewrite, но может быть уже настроена администратором вашего
# сервера и изменение этого параметра в .htaccess может быть запрещено.
# Если эта директива вызывает ошибку сервера, то закомментируйте строку
# (добавьте символ # в начало строки), перезагрузите в браузере сайт и
# протестируйте работу SEF-ссылок. Если они работают, то вам не надо ничего
# менять здесь, т.к. всё уже настроено администратором сервера.
#
# Строки, которые можно раскомментирвать (и использовать) имеют только один #.
# Строки с двумя символами ## раскомментировать не надо. В разделах, которые вы
# не используете, все строки должны начинаться с символа #
#
#####################################################

##  Может быть закомментировано, если вызывает ошибку сервера. Смотрите примечания выше.
Options +FollowSymLinks

#
#  Включение mod_rewrite

RewriteEngine On
RewriteCond %{THE_REQUEST} \ /index\.php\ HTTP/
RewriteRule ^index\.php$ mysite.com/ [R=301,L]
Redirect 301 /home mysite.com/

### Последние 3 строчки добавил, вычитав где-то в сети, но, к сожалению, тоже не помогло.

########## Начало - Правила обработки запросов для блокировки распространенных эксплоитов
## Если у вас возникли проблемы с вашим сайтом, используйте ниже описанные операции
## Они пытаются заблокировать самые распространенные эксплоиты Joomla!
#
## Код запрета доступа к xml-файлам расширений (раскомментируйте для активации)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## Конец кода запрета доступа к xml-файлам

# Блокировать любой запрос, пытающийся установить значение mosConfig через URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Блокировать любой запрос, пытающийся испортить base64_encode через URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Блокировать любой запрос, содержащий тег <script> в URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Блокировать любой запрос, пытающийся установить значение глобальных переменных PHP через URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Блокировать любой запрос, пытающийся изменить _REQUEST переменную через URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Перенаправлять заблокированные запросы на страницу 403 с запрещенными ошибками!
RewriteRule ^(.*)$ index.php [F,L]
#
########## Конец правил обработки для блокировки распространенных эксплоитов

#  Раскомментируйте следующую строку, если URL вашего web-сервера
#  не связаны напрямую с физическими путями файлов.
#  Обновите ваш каталог Joomla (используйте "/" для обозначения корня сервера)

# RewriteBase /


########## Начало раздела SEF ядра Joomla!
#
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## Конец раздела SEF ядра Joomla!
########## Начинаем запись правил чтобы заблокировать основные эксплойты
#
# Блокируем любой скрипт пытающийся получить значение mosConfig через URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# Блокируем любой скрипт пытающийся отправить любое дерьмо чере base64_encode по URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# Блокируем любой скрипт который содержит тег < script> в URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# Блокируем любой скрипт, который пытается установить глобальную переменную PHP через URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# Блокируем любой скрипт пытающийся изменить _REQUEST переменную через URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [OR]
# Блокируем любой скрипт, который пытается установить sbp or sb_authorname чере URL (баг simpleboard)
RewriteCond %{QUERY_STRING} sbp(=|%20|%3D) [OR]
RewriteCond %{QUERY_STRING} sb_authorname(=|%20|%3D)
# Отправляем все заблокированный запросы на главную с ошибкой 403 Forbidden!
RewriteRule ^(.*)$ index.php [F,L]
#
########## Заканчиваем запись правил чтобы заблокировать основные эксплойты
#
##### Начинаем запись правил для увеличения скорости работы сайта
#
SetOutputFilter DEFLATE
Header set Expires "max-age=29030400, public"
Header unset ETag
FileETag None
#
ExpiresActive On
ExpiresDefault A600
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/plain A1200
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType application/pdf A2592000
ExpiresByType text/html A600
#
########## Заканчиваем запись правил для увеличения скорости работы сайта

 и webconfig (тот что IIS сам создает после импорта правил из .htaccess)

Код
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <defaultDocument>
            <files>
                <clear />
                <add value="Index.php" />
                <add value="Index.html" />
                <add value="Index.htm" />
                <add value="Index.cfm" />
                <add value="Index.shtml" />
                <add value="Index.shtm" />
                <add value="Index.stm" />
                <add value="Index.php3" />
                <add value="Index.asp" />
                <add value="Index.aspx" />
                <add value="Default.htm" />
                <add value="Default.asp" />
                <add value="Default.aspx" />
            </files>
        </defaultDocument>
        <rewrite>
            <rules>
                <rule name="Imported Rule 1" stopProcessing="true">
                    <match url="^index\.php$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{THE_REQUEST}" ignoreCase="false" />
                    </conditions>
                    <action type="Redirect" url="arma2club.com/" redirectType="Permanent" />
                </rule>
                <rule name="Imported Rule 2" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{QUERY_STRING}" pattern="mosConfig_[a-zA-Z_]{1,21}(=|\%3D)" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="base64_encode.*\(.*\)" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="(\&lt;|%3C).*script.*(\>|%3E)" />
                        <add input="{QUERY_STRING}" pattern="GLOBALS(=|\[|\%[0-9A-Z]{0,2})" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="_REQUEST(=|\[|\%[0-9A-Z]{0,2})" ignoreCase="false" />
                    </conditions>
                    <action type="CustomResponse" url="index.php" statusCode="403" statusReason="Forbidden" statusDescription="Forbidden" />
                </rule>
                <rule name="Imported Rule 3">
                    <match url="(.*)" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" ignoreCase="false" />
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                        <add input="{URL}" pattern="^/index.php" ignoreCase="false" negate="true" />
                        <add input="{URL}" pattern="(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$" />
                    </conditions>
                    <action type="Rewrite" url="index.php" />
                </rule>
                <rule name="Imported Rule 4" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{QUERY_STRING}" pattern="mosConfig_[a-zA-Z_]{1,21}(=|%3D)" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="base64_encode.*(.*)" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="(&lt;|%3C).*script.*(>|%3E)" />
                        <add input="{QUERY_STRING}" pattern="GLOBALS(=|[|%[0-9A-Z]{0,2})" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="_REQUEST(=|[|%[0-9A-Z]{0,2})" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="sbp(=|%20|%3D)" ignoreCase="false" />
                        <add input="{QUERY_STRING}" pattern="sb_authorname(=|%20|%3D)" ignoreCase="false" />
                    </conditions>
                    <action type="CustomResponse" url="index.php" statusCode="403" statusReason="Forbidden" statusDescription="Forbidden" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Заранее спасибо за любую помошь! )

« Последнее редактирование: 01.07.2011, 18:22:12 от Duns63 »
*

Duns63

  • Новичок
  • 5
  • 0 / 0
Re: Joomla 1.5.23 + IIS7.5 + SEO. Как побороть?
« Ответ #1 : 04.07.2011, 12:42:09 »
Неужели никто не работает с IIS?? Вопросы вроде бы как банальные.. Может ли кто-нибудь тогда предложить вариант .htaccess, при котором эти проблемы устраняются в apache?
*

Лена)

  • Захожу иногда
  • 402
  • 28 / 0
Re: Joomla 1.5.23 + IIS7.5 + SEO. Как побороть?
« Ответ #2 : 16.08.2011, 09:48:29 »
Может здесь есть что-то полезное
*

Brooksus

  • Давно я тут
  • 641
  • 169 / 0
  • Ща спою...
Re: Joomla 1.5.23 + IIS7.5 + SEO. Как побороть?
« Ответ #3 : 16.08.2011, 13:32:16 »
 mod_rewrite и убирает index.php из ссылки
Или + или YM41001160794290, или WMR R189734255107, а лучше все сразу и много.
*

Brooksus

  • Давно я тут
  • 641
  • 169 / 0
  • Ща спою...
Re: Joomla 1.5.23 + IIS7.5 + SEO. Как побороть?
« Ответ #4 : 16.08.2011, 13:39:14 »
Код
#  mod_rewrite in use
RewriteEngine On
########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\=) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|<).*script.*(\>|>) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits
#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)
# RewriteBase /
########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
#########RewriteCond %{REQUEST_URI} ^(/site/component/option,com) [NC,OR]##### ##опционально - смотрите примечания##
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section
Или + или YM41001160794290, или WMR R189734255107, а лучше все сразу и много.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla накешировала 200Mb в директорию cache/page при отключенном кешировании, что за ...?

Автор Marygold

Ответов: 12
Просмотров: 7479
Последний ответ 27.09.2023, 09:23:54
от XFQDesNik
Joomla и Amazon S3

Автор Ghost_370

Ответов: 14
Просмотров: 12441
Последний ответ 07.04.2019, 09:38:02
от powerful888
Соц.иконки добавить, Joomla 1.5.26

Автор nuon

Ответов: 1
Просмотров: 7784
Последний ответ 04.03.2018, 21:34:56
от nuon
Как сделать JSON-LD микроразметку для Joomla 1.5

Автор Amigo9876

Ответов: 1
Просмотров: 7209
Последний ответ 05.01.2018, 21:54:43
от krot
Joomla 1.5.26 и мета теги

Автор SLdieR11

Ответов: 3
Просмотров: 4428
Последний ответ 17.10.2017, 10:53:54
от SeBun