Не могу редактировать файлы в Amazon Lightsail
Я пытаюсь изменить дочернюю тему, установленную на сайте WordPress в Amazon Lightsail. Я использую Transmit от Panic для доступа к серверу, но всякий раз, когда я пытаюсь выполнить какие-либо операции записи (редактирование, выгрузка, новая папка, новый файл, вставка, перемещение и т. Д.), Я получаю сообщение об ошибке, указывающее, что это невозможно я попросил его сделать следующее: "Убедитесь, что у вас есть разрешение на изменение этого файла".
Есть идеи? Я младший разработчик, а не опытный суперсервер (совершенно новый для Lightsail), поэтому, если вы думаете, что я упускаю что-то простое, я, вероятно, так и есть.:)
1 ответ
Это, скорее всего, права доступа к файлам. Я предполагаю, что вы входите в систему как пользователь ec2 с сертификатом. У этого пользователя не будет разрешения записывать файлы туда, куда вы пытаетесь.
Вы можете добавить пользователя ec-2 в группу, у которой есть разрешение на запись в эти папки и файлы, или вы можете создать нового пользователя с соответствующими разрешениями.
То, как я это сделал, я создал нового пользователя (например, bob), а затем добавил bob в группу www-data. Я убедился, что файлы и папки принадлежат группе www-data
У меня есть статья по этому вопросу здесь. Они ключевые части ниже, см. Ссылку для более подробного объяснения.
sudo su
sudo useradd fred
passwd fred
su fred
ssh-keygen -f fred-t rsa
mkdir .ssh
touch .ssh/authorized_keys
chmod go-w ~/
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
cat fred.pub >> /home/fred/.ssh/authorized_keys
vi /etc/ssh/sshd_config
PasswordAuthentication no
AllowUsers ec2-user fred
Вам нужно будет предоставить Фреду доступ к этим файлам.
groupadd www-data
chown -R fred:www-data /var/www
# Change webroot permissions
find /var/www -type d -exec chmod 755 {} \;
find /var/www -type f -exec chmod 644 {} \;
# Wordpress specific
find /var/www/wp-content/uploads -type f -exec chmod 664 {} \;
find /var/www/wp-content/plugins -type f -exec chmod 664 {} \;
find /var/www/wp-content/themes -type f -exec chmod 644 {} \;
chmod 440 /var/www/wp-config.php
chmod -R g+s /var/www/
В любом случае, теперь вы знаете, в чем проблема, вы можете использовать такие вещи, как разрешения, добавление пользователей в группы, создание групп и т. Д. Я ничего не знал об этом 18 месяцев назад, у меня был опыт разработчика, я узнал делая, читая учебники и экспериментируя. Храните резервные копии.