UMIhelp

Разработка сайта на UMI.CMS => Настройка системы и модулей => Тема начата: Aisamiery от 23 Апреля 2015, 17:40:12

Название: Доступ к просмотру комментариев
Отправлено: Aisamiery от 23 Апреля 2015, 17:40:12
Такая беда, есть страница отдельно каждого комментария, если на ней подставить .xml в конец урла, то Umi палит email коментатора. Как исправить?
Спасибо!
Название: Re: Доступ к просмотру комментариев
Отправлено: admin от 23 Апреля 2015, 18:26:20
Первое что приходит в голову. Создать шаблон для тсраниц типа комментарий, которые делают редирект на родитеся (так как на этих страницах никого и не должно быть)

Еще, если я правильно понимаю, email виден только у гостей, так как при формировании автора, его имя формируется из логина и email... можно еще и это попробовать поправить, чтобы email был доступен только при просмотре подробной информации об авторе.
Название: Re: Доступ к просмотру комментариев
Отправлено: Aisamiery от 23 Апреля 2015, 20:26:35
Первое что приходит в голову. Создать шаблон для тсраниц типа комментарий, которые делают редирект на родитеся (так как на этих страницах никого и не должно быть)

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

Разве шаблон отрабатыет если я дописываю в конец xml или json? По моему нет.

По второму, да только для гостей, пока внёс изменения чтоб без email создавал пользователя.

Так получается, нельзя запретить вызов .xml и .json? Ведь на самом деле там много чего палится из того, что ненужно видеть?

Пока координально я думаю можно закрыть такие обращения на уровне сервера apache или nginx, штатных средств не нашел
Название: Re: Доступ к просмотру комментариев
Отправлено: admin от 23 Апреля 2015, 22:42:07
Цитировать
Разве шаблон отрабатыет если я дописываю в конец xml или json? По моему нет.
Нет, не отрабатывается, расчет был на то что перед добавкой .xml к url отзыва, нужно этот url откуда-то получить.
Но ваша правда, решение является полумерой. Я не нашел штатных средств для того чтобы закрыть xml доступ.
А если уж лезть в систему, то можете наравне с настройками apache или nginx, воспользоваться одним из следующих вариантов:
1. Изменить настройки .htaccess.
строчка RewriteRule ^(.*)\.xml$ index.php?xmlMode=force&path=$1&%{QUERY_STRING} [L] формирует параметр xmlMode=force, который и формирует xml
2. Изменить /libs/root-src/index.php
блок
if (getRequest("xmlMode") == 'force') {
// flush XML
$dom = new DOMDocument('1.0', 'utf-8');
$rootNode = $dom->createElement("result");
$dom->appendChild($rootNode);
$rootNode->setAttribute('xmlns:xlink', 'http://www.w3.org/TR/xlink');


// принудительный режим xslt для получения глобальных переменных
def_module::isXSLTResultMode(true);
$globalVars = $cmsController->getGlobalVariables();

$translator = new xmlTranslator($dom);
$translator->translateToXml($rootNode, $globalVars);

$buffer->contentType('text/xml');
$buffer->push($dom->saveXML());
}
Учитывает параметр xmlMode=force и формирует xml вариант данных.
Название: Re: Доступ к просмотру комментариев
Отправлено: e.ioffe от 24 Апреля 2015, 19:38:30
В .htaccess перед

####################### UMI_CMS_HTACCESS_BEGIN ###########################

Добавляете

RewriteEngine On
RewriteRule ^(.*)\.xml$ / [L,R]

При запросе страницы /.xml перенаправляет на главную страницу сайта. Нужно проверить, нормально ли работает админка и eip с этой записью.