コンテンツにスキップ

Synology NAS WordPress アップロードできない問題の解決

提供: Kay's Wiki
2026年4月13日 (月) 16:30時点におけるKay (トーク | 投稿記録)による版 (ページの作成:「== Synology NAS WordPress アップロードできない問題の解決 == === 症状 === WordPressのメディアライブラリに画像をアップロードしようとすると、以下のエラーが表示される。 * 「ディレクトリ wp-content/uploads/2026/04 を作成できません。この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか?」 === 原因 === SynologyのWebステーション…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

Synology NAS WordPress アップロードできない問題の解決[編集]

症状[編集]

WordPressのメディアライブラリに画像をアップロードしようとすると、以下のエラーが表示される。

  • 「ディレクトリ wp-content/uploads/2026/04 を作成できません。この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか?」

原因[編集]

SynologyのWebステーションでWordPressをパッケージとしてインストールした場合、PHPの open_basedir がデフォルトで以下のパスしか許可していない。

/var/services/web_packages/wordpress:/tmp:/var/services/tmp

しかし実際のuploadsフォルダのパスは /volume1/web_packages/wordpress/wp-content/uploads であるため、PHPがアクセスを拒否する。


解決方法[編集]

open_basedirにuploadsパスを追加する[編集]

  1. DSM → Webステーションスクリプト言語の設定
  2. WordPress Profile を選択して編集
  3. PHP open_basedirをカスタマイズカスタマイズ を選択
  4. 以下を入力して保存
/var/services/web_packages/wordpress:/tmp:/var/services/tmp:/volume1/web_packages/wordpress/wp-content/uploads

→ 再起動不要で即時反映される。


DSMアップデート後の注意[編集]

DSMアップデート後に open_basedir がデフォルト値にリセットされる場合がある。 その際は上記の手順を再度実施する。


uploadsフォルダの権限設定[編集]

uploadsフォルダの権限が不足している場合はSSHで以下を実行:

sudo chown -R http:http /volume1/web_packages/wordpress/wp-content/uploads
sudo chmod -R 775 /volume1/web_packages/wordpress/wp-content/uploads

過去画像が表示されない場合[編集]

web_packages側のuploadsに過去の画像がない場合は、バックアップからコピーする:

sudo cp -rp /volume1/web/wordpress_old_backup/wp-content/uploads/2026/01 /volume1/web_packages/wordpress/wp-content/uploads/2026/ && sudo cp -rp /volume1/web/wordpress_old_backup/wp-content/uploads/2026/02 /volume1/web_packages/wordpress/wp-content/uploads/2026/ && sudo cp -rp /volume1/web/wordpress_old_backup/wp-content/uploads/2026/03 /volume1/web_packages/wordpress/wp-content/uploads/2026/ && sudo chown -R http:http /volume1/web_packages/wordpress/wp-content/uploads/ && sudo chmod -R 775 /volume1/web_packages/wordpress/wp-content/uploads/