Вопрос или проблема
Я немного застрял. Мой Mac (на Mavericks) умер на прошлой неделе, и я провел выходные, покупая новый компьютер и восстанавливая резервную копию старого (спасибо Богу за резервные копии, люди. Если вы еще не сделали, сделайте это). Новый компьютер работает на Yosemite.
У меня была довольно отличная система на старом компьютере, которой я был ОЧЕНЬ доволен для локальных установок WordPress через одну установку без использования WPMU. У меня установлены Apache, phpMyAdmin и MySQL в новой среде разработки (раньше я использовал MAMP, затем перешел на ServerPress, но отказался от обоих ради этой новой системы – она мне нравится намного больше), но идиот во мне не задокументировал, как я это сделал.
Моя проблема интересна (я искал здесь и не нашел ответа) – и я думаю это связано с тем, как я настроил систему для работы этих множества установок без WPMU, но все же через одну установку WP. Для этого я использую алиасы – в основном я создаю алиасы для основной установки WordPress к другим каталогам, оставляя папку wp-content в стороне. (Каждый “сайт” имеет свою собственную папку wp-content – все остальные файлы WP связаны через алиасы.) У меня происходит небольшое волшебство с wp-config.php, чтобы все было в порядке.
Я не знаю, связано ли это с тем, что Yosemite использует другую версию Apache, чем Mavericks, если это действительно алиасы являются причиной проблемы, или моя собственная неосведомленность о разрешениях/право собственности является проблемой здесь (я предполагаю, что это последнее), но у меня есть проблема с загрузкой изображений и созданием/обновлением WordPress для меня файла .htaccess. Что забавно, у меня совсем нет проблем с обновлением/установкой новых тем и плагинов и/или с самим WordPress.
Я вручную создал файл .htaccess и каталог /uploads (и да, мои разрешения действительно установлены на 755/644 для каталогов и файлов), и когда я загружаю изображение через загрузчик мультимедиа, оно действует, как будто загружается успешно. Однако подпапка с датой не создается, и изображение фактически не помещается в каталог загрузок. (Тем не менее, оно добавляется в базу данных без ошибок или чего-то такого.)
Я перерыл весь интернет, и перепробовал все, что находил. Я не смог найти ответ на эту проблему. Я пробовал всевозможные методы изменения права собственности/разрешений и ничего не работает. Поэтому теперь я обращаюсь к вашим умам, которые умнее моего. Есть ли у кого-нибудь идеи для меня? (Кстати, попытки “wheel” и “www-data” всегда возвращают мне “Illegal username/groupname” и не принимаются.) Я уверен, что это проблема права собственности, но, клянусь, я не могу решить, кто должен владеть чем.
Если это поможет, я пробовал решения с этих мест:
https://stackoverflow.com/questions/3740152/how-to-set-chmod-for-a-folder-and-all-of-its-subfolders-and-files-in-linux-ubunt
http://coolestguidesontheplanet.com/get-apache-mysql-php-phpmyadmin-working-osx-10-9-mavericks/
http://paulmason.name/item/change-apache-user-group-in-lion-os-x
http://francoisdeschenes.com/2013/02/26/enable-write-permissions-for-apache-built-into-mac-os-x
..а также ряд других вещей, которые я нашел через гугл, которые были похожи на вышеперечисленные решения. Если это поможет, мои журналы ошибок apache содержат много таких записей:
[Mon Oct 20 08:04:02.516302 2014] [mpm_prefork:notice] [pid 74560] AH00169: caught SIGTERM, shutting down
[Mon Oct 20 08:04:02.708508 2014] [core:notice] [pid 74619] AH00094: Command line: ‘/usr/sbin/httpd -D FOREGROUND’
и в моих журналах доступа apache:
127.0.0.1 – – [20/Oct/2014:08:04:17 -0400] “GET //www/sites/site1/wwwroot/wp-content/uploads/2014/10/image.jpg HTTP/1.1” 404 279
127.0.0.1 – – [20/Oct/2014:08:04:17 -0400] “GET //www/sites/site1/wwwroot/wp-content/uploads/2014/10/image.jpg HTTP/1.1” 404 282
Я понятия не имею, что это значит, однако они совпадают с моими попытками загрузить изображения через бекэнд WordPress. (Ошибок PHP нет.)
Любая помощь/подсказки будут очень признательны.
Я исправил это. На самом деле, это не было связано с разрешениями сервера. Это была ошибка PICNIC – волшебные изменения в “wp-config”, которые я внес – я указал неправильный путь к папке загрузок. Исправил, подправил, готово.
Ответ или решение
Заголовок: Решение проблем с загрузкой изображений в локальном WordPress на Mac OS X Yosemite
Теория (Т):
Проблемы с загрузкой изображений в WordPress на локальном сервере могут быть вызваны различными факторами, включая неправильно настроенные пути, проблемы с разрешениями, а также некорректное конфигурирование aliases или других директорий. В вашем случае, судя по описанию проблемы, проблема может быть связана с конфигурацией, особенно учитывая, что вы используете алиасы для многосайтовой установки WordPress без применения WPMU.
Пример (Е):
Рассмотрим ваш конкретный случай. Вы на новом компьютере с Mac OS X Yosemite настроили серверную инфраструктуру вручную, отказавшись от MAMP и ServerPress в пользу Apache, phpMyAdmin и MySQL. Отсутствие документации привело к трудностям в восстановлении конфигурации, что может повлиять на функционирование WordPress, как в примере с загрузками изображений. Загруженные файлы не появляются в назначенной директории uploads
, хотя в базу данных они добавлены корректно.
Применение (A):
Решение проблемы состояло в исправлении конфигурации файла wp-config.php
. Важно, чтобы путь к директории загрузок был указан правильно. Как оказалось в вашем случае, указан неправильный путь к папке загрузок, который вы и исправили.
Чтобы решить данную проблему, следуйте следующим шагам:
-
Пересмотрите файл
wp-config.php
, особое внимание уделяя переменным, отвечающим за пути. Убедитесь, что путь к папкеuploads
указан корректно. -
Проверьте конфигурацию алиасов: убедитесь, что они настроены корректно и не создают конфликтов с физическим расположением директорий.
-
Перепроверьте права доступа (755 для директорий и 644 для файлов) и корректность владельцев файлов/директорий. Проверьте, чтобы Apache имел необходимые права для записи в директорию загрузок.
-
Протестируйте изменения, загрузив новое изображение, и убедитесь, что оно загружено без ошибок.
В случае возникновения аналогичных проблем в будущем, уделите внимание ведению документации по настройке серверной части. Это позволит сохранить ключевые настройки и конфигурации, минимизируя вероятность ошибки при перезагрузке или переустановке системы.
Итог: Фокус на правильной конфигурации и документировании изменений в настройках является критическим шагом для успешного управления серверной инфраструктурой в целях предотвращения подобных проблем.