Общий вопрос о разрешениях для файлов Linux: Apache и WordPress

Я перешел с общего хостинга на VPS несколько недель назад, и у меня возникли эти досадные проблемы с разрешениями в WordPress. Вы знаете, что вы можете загружать и обновлять плагины (и сам WordPress) из админ-панели, но с тех пор, как я переехал, она стала спрашивать мои учетные данные FTP, что довольно медленно, когда мне нужно обновить ~ 20 плагинов.

Я думаю, что это должно быть какой-то проблемой прав. Я посмотрел, что файлы WordPress общего хостинга, все они принадлежат имени пользователя и группе kovshenin (kovshenin: kovshenin), файлы -rw-r - r--, а каталоги - drwx-r-xr-x.

На моем VPS apache работает под apache: apache, а мои файлы - kovshenin: kovshenin. Что я должен сделать, чтобы сделать их читаемыми и доступными для записи как для Ковшенина, так и для Apache?

Кроме того, я изменил разрешения на 0777 для всех файлов и папок моей установки WordPress, что позволило мне устанавливать и удалять плагины без FTP, но когда я нажал на автоматическое обновление до WordPress 2.8.1, он по-прежнему запрашивал мою учетную запись FTP. Это проблема wp или я что то пропустил?

Благодарю.

Update: Мне удалось бежатьid а такжеid www-data на общем хостинге MediaTemple. Пользователь kovshenin находится в группе kovshenin, а www-data находится в группе www-data. Нет больше групп. Какой трюк?

Another update Хорошо, я добавилapache пользователь кkovshenin группа, мои файлы WordPresskovshenin:kovshenin сrw-rw-r-- разрешения иdrwxrwxr-x разрешения на каталоги, но что-то все еще не так. Пользовательapache я могу получить доступ к файлам и папкам, я могу использовать онлайн-редактор тем и плагинов в админ-панели WordPress, я могу вносить изменения в файл .htaccess из WordPress, но при установке плагина / темы по-прежнему запрашиваются учетные данные FTP!

Есть идеи? Благодарю.

 kovshenin11 июл. 2009 г., 16:09
Нет. Www-data находится на общем хостинге, а apache работает под www-data. Пользователь apace находится на моем VPS и работает под пользователем и группой apache: apache.
 Troubadour11 июл. 2009 г., 15:59
Вы говорите, что Apache работает под Apache: Apache может получить доступ к файлам WordPress с www-data: www-data? Если это так, то выясните, как он управляет этим, и настройте его, сделайте то же самое с kovshenin: kovshenin.

Ответы на вопрос(5)

В настоящее время добавляемdefine('FS_METHOD', 'direct'); чтобы wp-config.php мог добиться цели. Не уверен, что это сработало бы в «09». УвидетьВот для моего аналогичного случая, используя nginx. Я обнаружил, что это был важный шаг.

Предполагая, что ваш каталог установки WordPress/var/www/html Массовое изменение всех файлов и каталогов для правильного разрешения использования:

sudo  find /var/www/html/ -type d -exec chmod 775 {} \;
sudo  find /var/www/html/ -type f -exec chmod 664 {} \;

Для массового изменения группы владельцев всего используйте:

sudo chgrp -R <desired_username>.<desired_groupname> /var/www/html

Вы можете передать право собственности на www-данные согласноВот.

Запустите следующую команду в вашем каталоге WordPress (требуется sudo):

sudo chown -Rf www-data *

Работает на Apache.

 kovshenin11 июл. 2009 г., 15:24
Это прекрасно работает, но тогда я не могу редактировать эти файлы с моим обычным пользователем, и это меня пугает .. :(
 11 июл. 2009 г., 15:39
Они все еще не принадлежат Ковшенину? Вы должны иметь возможность редактировать их, если они есть. Если нет, то вы можете попробовать сделать пользователя kovshenin участником группы, которой он принадлежит, и использовать newgrp, чтобы изменить группу на эту группу перед редактированием.
 kovshenin11 июл. 2009 г., 15:42
Они принадлежат группе kovshenin, но новые файлы, которые я буду загружать от пользователя kovshenin, станут kovshenin: kovshenin и I 'придется чуновать снова. Я настраиваю хостинг для нескольких моих клиентов, и мне бы хотелось, чтобы их файлы были kovshenin: стиль kovshenin, а не apache (или www-data). Интересно, как MediaTemple сделал это ..
 11 июл. 2009 г., 15:44
Вы можете добавить своего обычного пользователя в группу www-data или добавить sudo в начале вашей команды.
 kovshenin11 июл. 2009 г., 15:49
Какая команда? Пожалуйста, прочитайте, что я пытаюсь сделать, это не так просто ... Нет никаких дополнительных групп.
Решение Вопроса

What should I do to make them readable and writable by both kovshenin and apache?

Create a new group, say "wordpress". Add both koveshenin and www-data users to the wordpress group. Change the group owner of all the files to wordpress (using chgrp). Make sure all the files are group writeable. Set the g+s (setgid) permission bit on all the directories of interest. Make sure kovshenin and apache's default umask includes group read & write permission.

Второй последний шаг - трюк. Это означает, что всякий раз, когда kovshenin или apache создает файл в этих каталогах, для владельца группы будет установлено wordpress (вместо kovshenin или apache).

 11 июл. 2009 г., 16:39
Трудно сказать, но учетная запись общего хостинга может быть настроена с помощью phpsuexec.
 kovshenin11 июл. 2009 г., 16:42
Хорошо, кафе, проверим это, спасибо.
 kovshenin11 июл. 2009 г., 16:11
Хорошо, это ближе, спасибо большое, но почему у пользователя www-data и kovshenin на учетной записи общего хостинга Media Temple нет дополнительных групп? Как называется этот трюк? ;)
 01 мар. 2013 г., 03:53
@ChristopherIckes: это означает, что все, что вы используете для создания каталогов, не копирует бит setgid в новые каталоги (стандарт/bin/mkdir Утилита делает это). Возможно, вам придется вручнуюchmod g+s каталоги после того, как они созданы.
 kovshenin11 июл. 2009 г., 19:44
Привет, кафе, еще один вопрос. Я изменил владельца группы всех файлов и папок в папке wp на apache, владельцем по-прежнему является kovshenin, так что это kovshenin: apache и права 0775, поэтому и kovshenin, и apache имеют права на чтение, запись и выполнение файлов. , Работает отлично. Я сделал часть g + s, новые файлы создаются с kovshenin: apache, все хорошо, НО, права на новый файл - 755. Как я могу это исправить для 775? Пробные настройки g + ws. Кажется, не работает. Есть идеи? Еще раз спасибо.

У меня возникла та же проблема, и я решил ее, отключив PHP & quot; safe_mode & apos; в plesk теперь WP может создавать папки и перемещать файлы без каких-либо проблем.

Я надеюсь, что это поможет вам.

Ваш ответ на вопрос