3 способа исправить «Чтобы осуществить запрошенное действие WordPress необходим доступ к вашему серверу»

Если вы используете WordPress со стеком LAMP, рано или поздно вы наткнетесь на следующее всплывающее окно:

Connection information: To perform the requested action, WordPress needs to access your web server

Информация о подключении

Чтобы осуществить запрошенное действие WordPress необходим доступ к вашему серверу.
Пожалуйста, введите координаты доступа к FTP. Если вы не помните координаты доступа, обратитесь к веб-хосту.

Это может произойти, когда вы пытаетесь установить или обновить тему или плагин в WordPress. Важно понимать, что это всплывающее окно — не ошибка, а мера безопасности. Тем не менее оно может сильно надоедать, особенно если вы пытаетесь осуществить простую операцию, например, установить или обновить плагин или тему. Обычно это всплывающее окно появляется потому, что WordPress требует повышенных прав для выполнения определенных действий на вашем сайте. Это мера безопасности, гарантирующая, что только авторизованные пользователи могут вносить изменения, которые потенциально могут повлиять на функциональность или безопасность сайта. Если вы работаете на сервере LAMP, это означает, что пользователь Apache не имеет необходимых прав для добавления дополнительного кода на ваш сайт. В некоторых ситуациях это может быть отличной мерой безопасности. Представьте, что некий злоумышленник пытается авторизоваться как пользователь веб-сервера. Если эта функция включена, даже если его атака будет успешной и он каким-то образом авторизуется как пользователь вашего сервера, он все равно не сможет выполнить никаких вредоносных операций. Пользовательские разрешения — отличная функция систем на базе Unix, таких, как Linux, но с ними нужно обращаться осторожно, они могут быть очень запутанными. Не изменяйте права доступа, если не знаете, что делаете. Вы были предупреждены.

Способ 1: Предоставьте необходимую информацию

Если вы пользуетесь услугами хостинг-провайдера, такого как HostArmada, то при покупке хостинг-аккаунта вы получите всю необходимую информацию, которую нужно будет заполнить в вышеуказанном всплывающем окне (имя хоста, ftp-пользователь и пароль). Имя хоста — это ip-адрес сервера, ftp-пользователь — это пользователь Cpanel, а пароль — это ваш пароль к cpanel. Просто введите учетные данные, и все действия будут завершены.

Способ 2: Обновите файл wp-config.php

Если вы не против разрешить WordPress писать в wp-content, то добавьте приведенный ниже код непосредственно перед строкой «That’s all, stop editing! Happy publishing.» в wp-config.php:

define('FS_METHOD', 'direct');

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

Способ 3: Обновите разрешения пользователей Apache

Этот подход требует, чтобы у вас был доступ по ssh к вашему веб-серверу и вы имели базовое представление о правах доступа к файлам. Чтобы разрешить WordPress писать в папку wp-content, вы должны добавить право собственности на папку WordPress (рекурсивно) пользователю Apache. У вас может возникнуть соблазн передать право собственности пользователю root, но никогда этого не делайте, чтобы избежать проблем с безопасностью. Сначала найдите имя пользователя apache, перейдя в httpd.conf и просмотрев файл. В зависимости от вашей конфигурации LAMP, файл apache.conf может находиться в разных местах. Самый простой способ найти его — использовать команду locate:

locate httpd.conf

Это даст вам путь к файлу. Он должен быть похож на /etc/apache2/httpd.conf. Откройте файл с помощью редактора nano и найдите следующие строки:

sudo nano /etc/apache2/httpd.conf
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User apache
Group apache

</IfModule>

В данной ситуации пользователем является Apache, но в вашей системе он может быть другим. Как только вы узнаете имя пользователя, обновите разрешения на файл. В терминале ssh добавьте следующие разрешения: (замените пользователя и путь к файлу соответствующим образом)

sudo chown -R apache:apache /var/www/html/mywesomewebsite.com
sudo chmod -R 755 /var/www/html/myawesomewebsite.com

Обратите внимание: изменение прав доступа пользователей — опасная и иногда необратимая операция. Убедитесь, что вы на 100% знаете, что делаете. Две вышеприведенные команды изменяют права собственности и разрешения файлов и каталогов в пределах текущего каталога. Установка разрешений 755 для всех файлов и каталогов в текущем каталоге — это обычная настройка разрешений для каталогов веб-сервера, которая обеспечивает надлежащую функциональность, сохраняя безопасность.