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

sega

  • Захожу иногда
  • 272
  • 5 / 0
На сайте при стандартном SEF присутствуют такие ссылки типа
Код
component/users/?view=login 
component/users/?view=reset
и проч
как вообще вырезать com_user с сайта с фронтенда?
Регистрация и авторизация в лицевой части мне вообще не нужна
*

shurikkan

  • Осваиваюсь на форуме
  • 46
  • 1 / 0
  • Joomla-support.ru :: Shurikkan
Re: Удалить авторизацию с фронтенда
« Ответ #1 : 03.04.2015, 13:53:51 »
Чтобы удалить со страниц форму входа (со ссылкой на регистрацию) нужно удалить из Менеджера модулей модуль/модули с типом "Вход на сайт".

Чтобы отключить регистрацию пользователей:
Пользователи -> Менеджер пользователей -> Настройки -> Разрешить регистрацию пользователей: Нет

А на каких страницах ты вообще эти ссылки нашёл?
« Последнее редактирование: 03.04.2015, 13:58:25 от shurikkan »
*

sega

  • Захожу иногда
  • 272
  • 5 / 0
Re: Удалить авторизацию с фронтенда
« Ответ #2 : 03.04.2015, 14:19:06 »
нет, так ты просто модули удалишь а тут прямая ссылка на компонент.
Их находят для перебора паролей админа, регистрации и проч. Поэтому и нужно их как то закрыть.
Пока закрыл через htaccess но думал может есть более элегантное решение
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Удалить авторизацию с фронтенда
« Ответ #3 : 03.04.2015, 17:09:36 »
Можно еще в шаблоне прописать что то вроде этого:
Код: php
$input= JFactory::getApplication()->input;
if( $input->getCMD('option','') == 'com_users' && in_array($input->getCMD('view',''), array('login', 'reset')) ) {
die('access denied');
}

Где нибудь в самом начале.
интернет-блог: http://websiteprog.ru
*

PUNK57

  • Захожу иногда
  • 231
  • 5 / 3
Re: Удалить авторизацию с фронтенда
« Ответ #4 : 04.04.2015, 00:02:20 »
Тоже давно интересен этот вопрос.А ссылки легко найти в панели вебмастера
*

fsv

  • Живу я здесь
  • 2765
  • 402 / 2
Re: Удалить авторизацию с фронтенда
« Ответ #5 : 04.04.2015, 00:43:05 »
Можно еще в шаблоне прописать что то вроде этого:
Чтобы в шаблоне Joomla на каждой странице не отрабатывать проверку, переопределить нужный шаблон компонента, после
Код: php
defined('_JEXEC') or die;
добавить
Код: php
$app = JFactory::getApplication();
$app->redirect(JUri::base());
return false;
Веб-разработка: заказ. Только новая объемная разработка. Качественно, дорого.
*

Kostelano

  • Давно я тут
  • 525
  • 51 / 1
Re: Удалить авторизацию с фронтенда
« Ответ #6 : 04.04.2015, 02:24:39 »
Пока закрыл через htaccess но думал может есть более элегантное решение
Как именно закрыл? Ты все перечислил? Их же тьма повторяющихся. Поделись своим решением.

Я топорно закрыл, во всяком случае теперь ссылки вида component/users/?view=login попадают на 404. Не хорошо, но хоть так.

Код
Redirect 301 /component/users /

А шо робыть со всеми остальными ссылками типа index.php?option=com_users&view=login...
« Последнее редактирование: 04.04.2015, 02:27:57 от Kostelano »
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Удалить авторизацию с фронтенда
« Ответ #7 : 04.04.2015, 02:36:21 »
Чтобы в шаблоне Joomla на каждой странице не отрабатывать проверку, переопределить нужный шаблон компонента

Согласен, так еще лучше, хотя проверка копеечная по ресурсам
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Удалить авторизацию с фронтенда
« Ответ #8 : 04.04.2015, 09:31:40 »
переопределить нужный шаблон компонента, после
Код: php
defined('_JEXEC') or die;
добавить
Код: php
$app = JFactory::getApplication();
$app->redirect(JUri::base());
return false;

У меня весь шаблон login так:
Код: php
<?php defined('_JEXEC') or die;
JFactory::getApplication()->redirect(JUri::base(), 'Данное действие запрещено', 'warning');
*

PUNK57

  • Захожу иногда
  • 231
  • 5 / 3
Re: Удалить авторизацию с фронтенда
« Ответ #9 : 04.04.2015, 12:16:51 »
А после обновления Joomla все эти танцы повторять? Файлы перезаписываются?
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Удалить авторизацию с фронтенда
« Ответ #10 : 04.04.2015, 12:25:09 »
Если переопределить вид в шаблоне, то при обнове все сохраниться.
*

notarget

  • Осваиваюсь на форуме
  • 44
  • 1 / 0
Re: Удалить авторизацию с фронтенда
« Ответ #11 : 12.11.2019, 21:25:21 »
 Нашел решение:

В файле .htaccess добавить строчки:


RewriteEngine On

## Redirect from LOGIN PAGE to INDEX page:
RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteCond %{QUERY_STRING} view=login [NC]
RewriteRule .* https://skalolaskovy.ru/? [R=301,L]
 
RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteRule .* https://skalolaskovy.ru/? [R=301,L]
 
RewriteCond %{REQUEST_URI} / [NC]
RewriteCond %{QUERY_STRING} option=com_users&view=login [NC]
RewriteRule .* https://skalolaskovy.ru/? [R=301,L]


Соответственно, вместо главной страницы сайта skalolaskovy.ru указать свой сайт или конкретную страницу сайта.

Источник: https://skalolaskovy.ru/joomla/500-htaccess-301-redirect-with-parametr

*

Kostelano

  • Давно я тут
  • 525
  • 51 / 1
Re: Удалить авторизацию с фронтенда
« Ответ #12 : 12.11.2019, 23:59:17 »
Нашел решение:
В файле .htaccess добавить строчки:

Спасибо за решение, вписал себе :).
Единственное - остались живыми ссылки для восстановления пароля/логина + страница регистрации, их тоже можно закрыть.
Код
http://site.ru/component/users/reset?Itemid=101
http://site.ru/component/users/remind?Itemid=101
http://site.ru/component/users/registration?Itemid=101
Финальный вариант для .htaccess:
Код
### Перенаправление со страниц авторизации/регистрации
RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteRule .* https://site.ru/? [R=301,L]

RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteCond %{QUERY_STRING} view=login [NC]
RewriteRule .* https://site.ru/? [R=301,L]

RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteCond %{QUERY_STRING} reset?Itemid=101 [NC]
RewriteRule .* https://site.ru/? [R=301,L]

RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteCond %{QUERY_STRING} remind?Itemid=101 [NC]
RewriteRule .* https://site.ru/? [R=301,L]

RewriteCond %{REQUEST_URI} /component/users [NC]
RewriteCond %{QUERY_STRING} registration?Itemid=101 [NC]
RewriteRule .* https://site.ru/? [R=301,L]

RewriteCond %{REQUEST_URI} / [NC]
RewriteCond %{QUERY_STRING} option=com_users&view=login [NC]
RewriteRule .* https://site.ru/? [R=301,L]
*

Petrovich

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Re: Удалить авторизацию с фронтенда
« Ответ #13 : 29.10.2023, 15:11:36 »
В
Финальный вариант для .htaccess:

Братите внимание на
?Itemid=101
это частный вариант - и его нужно править
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как удалить позицию модуля в настройках модуля?

Автор 62411

Ответов: 6
Просмотров: 405
Последний ответ 12.03.2023, 18:24:38
от 62411
Как удалить или заменить фразу Contact Form?

Автор PNP

Ответов: 2
Просмотров: 401
Последний ответ 08.12.2021, 20:14:40
от PNP
Как удалить галерею со страницы?

Автор prioritet

Ответов: 3
Просмотров: 754
Последний ответ 28.08.2021, 22:30:39
от gartes
Не удаётся удалить копию шаблона protostar!

Автор kiev

Ответов: 0
Просмотров: 470
Последний ответ 09.02.2021, 01:27:04
от kiev
Аплоад файлов на сервер из фронтенда

Автор arma

Ответов: 4
Просмотров: 419
Последний ответ 23.01.2021, 00:10:51
от pavelrer