2

Я установил несколько локальных версий Wordpress для целей разработки.

После установки я могу создавать посты, страницы и редактировать настройки администратора.

Однако, как только я пытаюсь загрузить изображения, которые будут сохранены в wp_content/uploads, я получаю сообщение об ошибке:

Ошибка при загрузке: Невозможно создать каталог ...../blog/wp-content/uploads/2011/05. Является ли его родительский каталог доступным для записи сервером?

Похоже, сервер MAMP работает как пользователь _www. Каталог блога принадлежит User1, а группа User1 _www не входит в группу User1, не так ли? Я не хочу chmod 777 или 765 по каталогам, просто чтобы это заработало. Погуглил пару ссылок:

http://codex.wordpress.org/Changing_File_Permissions в "Схема разрешений для WordPress"

Все файлы должны принадлежать вашей учетной записи пользователя (ftp) на вашем веб-сервере и должны быть доступны для записи этой учетной записи. На общих хостах файлы никогда не должны принадлежать самому процессу веб-сервера (иногда это www или apache или никем не пользователь).

Любой файл, которому требуется доступ для записи из WordPress, должен принадлежать или принадлежать группе учетной записи пользователя, используемой WordPress (которая может отличаться от учетной записи сервера). Например, у вас может быть учетная запись пользователя, которая позволяет вам отправлять файлы FTP туда и обратно на ваш сервер, но сам ваш сервер может работать с использованием отдельного пользователя, в отдельной группе пользователей, такой как dhapache или nobody. Если WordPress работает как учетная запись FTP, эта учетная запись должна иметь права на запись, т. Е. Быть владельцем файлов или входить в группу, которая имеет доступ на запись. В последнем случае это будет означать, что разрешения устанавливаются более строго, чем по умолчанию (например, 775 вместо 755 для папок и 664 вместо 644).

Пользователь и группа - это Пользователь1 (который является администратором). Запуск "ps aux | grep httpd" выполняется как _www. Поэтому я думаю, что это означает, что Wordpress работает как пользователь _www. Таким образом, совет кажется противоречивым: «файлы никогда не должны принадлежать процессу веб-сервера», т. Е. _Www, но затем в нем говорится: «Любой файл, которому требуется доступ для записи из WordPress, должен принадлежать или принадлежать группе учетной записи пользователя, используемой WordPress». Разве это не снова?

Другой поиск нашел этот URL http://dancingengineer.com/computing/2009/07/how-to-install-wordpress-on-mac-os-x-leopard States, который говорит:

Мой предпочтительный способ сделать это - изменить группу каталога WordPress и его содержимое на _www и дать разрешения на запись для группы. Сохраните владельца в качестве вашего "имени пользователя".

$ cd /Users /"username" /Сайты

$ sudo chown -R имя пользователя:_www wordpress_directory

$ sudo chmod -R g+w wordpress_directory

Однако, когда я попробовал это, он не работал для автоматического обновления до более новых версий WordPress, хотя он работал для автоматического обновления файла .htaccess для довольно постоянных ссылок.

Мне не совсем понятно, что делать. Последнее предложение, по-видимому, говорит о том, что измените группу с User1 на _www и предоставьте группе доступ на запись, но обновления Wordpress работать не будут.

Это правильное решение?
Я бы подумал, что будет ясный способ настроить это на OS X 10.6?

Было бы замечательно, если бы был плагин, который мог бы запускать скрипт для каждой из основных ОС, на которых работает Wordpress.

1 ответ1

1

Ваш вопрос немного сложен, но я все равно постараюсь помочь:

  1. Во-первых, вы можете запустить MAMP как «www /mysql» или «user /user». То, что вы выбираете, зависит от того, что вы хотите и где вы разместили свои файлы. Если вы не подвергаете свой веб-сервер воздействию внешнего мира, то пользователь / пользователь, вероятно, является самым простым, хотя и не таким безопасным.

  2. Во-вторых, автообновления / плагины / темы загружаются на ваш сайт через FTP, и поскольку большинство людей не используют FTP-сервер на своих локальных компьютерах и не имеют статического IP-адреса или доменного имени для адресации на своей локальной машине, они не будут работать, поэтому установить и обновить вручную. Да, вы можете настроить FTP-сервер на своей рабочей станции и использовать службу DynDNS и перенаправить порт FTP через маршрутизатор и брандмауэр на рабочую станцию, но на самом деле это, вероятно, того не стоит.

  3. В-третьих, загрузчик мультимедиа не использует FTP, поэтому он ДОЛЖЕН работать при локальной установке, в отличие от плагинов, обновлений и тем. Ваш, вероятно, не работает, потому что права доступа или права доступа для / wp-содержимого установлены неправильно. Это может быть связано с тем, что вы используете веб-сервер как «_www / _mysql», а "_www" не имеет разрешений на то, где находится папка, в которой хранятся ваши файлы, ИЛИ может быть, что разрешения RWX установлены неправильно в папке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .