やわらかしかっけい

なんでもすぐに忘れてしまう自分のために

【解決】WordPressでメディアがアップロードできない

メディアをアップロードしようとすると下記のようなエラーメッセージが出るようになったので、解決してほしい という依頼があった。

ディレクトリ○○を作成できませんでした。 この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか ?」

OK!パーミッション

…と思ったら。

アップロード先フォルダを変更しているケース

アップロード先が、デフォルトの /wp-content/uploads から変更されており、
設定 > メディア設定 の「ファイルアップロード」の項目から

  • アップロードするファイルの保存場所
  • ファイルへの完全なパス

が独自に設定されているケースだった。

(なお、この項目はWP ver.3.6以降デフォルトでは表示されず、カスタマイズされている場合のみ表示される仕様らしい。)
blog.s-giken.net

パーミッション755、757にしても解決できず

  • アップロードするファイルの保存場所
../images/uploads

という指定がされており、パスは間違っていなかった。
相対パスの場合は、wp-config.phpがある場所からのパスを指定する)

images、uploads 各フォルダのパーミッションは755に設定されており、757にしても変わらず。

絶対パスで解決

  • アップロードするファイルの保存場所
../images/uploads
↓
/home/ドメイン/www/images/uploads

にしてみたら、なぜか解決した。

絶対パスはサーバーにより異なる。上記はさくらレンタルサーバーの場合)

なんで解決したのかはわからないが、一応記録しておく。