[umka]

[umka]
Рейтинг
456
Регистрация
25.05.2008
Sitealert:
Эпично. Смело. Бесшабашно. Безрассудно.

Вы понимаете, что вы только что ТС-у всю надежду на восстановление сломали?

ziliboba0213:
Каким образом хостер может востановить доступ в админку сайта?

Восстановят весь аккаунт из бэкапа :D

Aisamiery, ну если в голове дырка (от предыдущего контрольного выстрела), то да, на сайте в загружаемых посетителями html-документах тоже выполняется код, эти файлы доступны извне, и ссылки на них сразу вываливаются в паблик.

Всё зависит от того, как на сервере реализован запуск интерпретатора.

Бывают разные способы: CGI, FastCGI, mod_php, и пр. и куча разных вариаций.

То есть, львиную долю ресурсов обычно занимает передача кода в обработчик и получение результата.

А сам интерпретатор отрабатывает очень быстро. Просто молниеносно быстро.

Включите выполнение php в файлах html.

Этим убьёте (или по крайней мере контузите) сразу двух зайцев:

- Не поменяется адресация

- Не будет лишних редиректов/реврайтов

Эта фишка вырубается путём создания пользователя без возможности авторизации без пароля.

Вы каким образом создаёте пользователя?

Или же полным удалением плагина:

UNINSTALL PLUGIN unix_socket;

coolwebsearcher:
в консоле mysql выполните


update mysql.user set plugin=null where user='root';
flush privileges;

А разве ТС говорил, что ему неудобно заходить из консоли без ввода пароля? :)

mark2011:
Вы хотите сказать, что при подключении через тот же phpMyAdmin всё будет нормально? Или при любом подключении НЕ через консоль?

Если указывается "localhost", то это тоже через "unix_socket". И если PhpMyAdmin (или ещё что-то, например, сайт какой-то) работает от пользователя "root", то подключиться к БД под пользователем "root" он сможет без указания пароля.

Если же сайт работает от пользователя "vasya", то подключиться к БД под пользователем "vasya" он сможет без указания пароля.

Для этого, конечно, нужно, чтобы пользователи БД создавались определённым образом (IDENTIFIED VIA unix_socket), что у вас, видимо, происходит по умолчанию.

Почитайте ссылочку выше, там же всё написано, даже примеры есть.

Вот эта приблуда позволяет системным пользователям авторизовываться без указания пароля при подключении через консоль:

mark2011:
... IDENTIFIED VIA unix_socket ...

Если вы делаете изменения в системной таблице с помощью команды UPDATE, то после этого нужно делать FLUSH PRIVILEGES;

А вообще, для изменения паролей даже есть специальная команда

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password');

Если всё равно ничего не получается, зайдите через консоль, как вы это делаете "mysql -u root", и покажите, что выдаёт SHOW GRANTS;

Всего: 6067