お知らせ!! 「jpcmoh.myds.me」から「mohlog.com」へ変更しました
PR
NASでWebサーバー

WordPressのパーミッション

アイキャッチ パーミッション NASでWebサーバー
記事内に広告が含まれています。
スポンサーリンク

はじめに

Webサーバーをあれこれいじっていたっら、ファイルのパーミッションがおかしくなっていました。

WordPressのデータ(ファイルやディレクトリ)の所有者とパーミッションは、セキュリティと運用の安定性に直結する重要な設定です。
自分でWEBサーバーを構築していろいろ弄っていると、ときどきおかしくなっていることがあります。
設定を確認してみましょう。


スポンサーリンク

所有者(Owner)

WordPressのファイル群は、Webサーバーの実行ユーザーが読み書きできるように設定する必要があります。

環境推奨所有者
Synology NAS(Web Station)http または nginx(DSMのバージョンによる)
Docker(公式WordPressイメージ)コンテナ内では www-data(UID: 33)
Debian/Ubuntu(Apache)www-data
CentOS/RHEL(Apache)apache

Dockerでホスト側とコンテナ側のUID/GIDが一致しない場合は、bind mount時にUID/GIDを調整するか、chownで合わせる必要があります。


スポンサーリンク

パーミッション(Permissions)

WordPressのパーミッション設定は以下の通りです

ディレクトリ(Folders)

  • 755:所有者が読み・書き・実行、その他は読み・実行のみ
  • 理由:実行権限がないとPHPファイルが読み込まれない

設定コマンド

Bash
sudo find /var/www/wordpress/ -type d -exec chmod 755 {} \;

ファイル(Files)

  • 644:所有者が読み・書き、その他は読みのみ
  • 理由:書き込み権限を制限することで改ざんリスクを低減

設定コマンド

Bash
sudo find /var/www/wordpress/ -type f -exec chmod 644 {} \;

特に注意すべきファイル

ファイル推奨パーミッション備考
wp-config.php600 または 640DB情報を含むため厳しく制限
.htaccess644Apache環境でURLリライトなどに使用

スポンサーリンク

設定コマンドまとめ(CLI)

Bash
# 所有者/パーミッション確認
ls -al /var/www/wordpress/
# 所有者変更(例: www-data に変更)
sudo chown -R www-data:www-data /var/www/wordpress/
# パーミッション一括変更
sudo find /var/www/wordpress/ -type d -exec chmod 755 {} \;
sudo find /var/www/wordpress/ -type f -exec chmod 644 {} \;
sudo find /var/www/wordpress/ -name "wp-config.php" -exec chmod 640 {} \;

Synology NAS + Dockerでは、ホスト側のUID/GIDとコンテナ側のwww-dataが一致しているかが鍵になります。もし一致していない場合、docker run時に--user指定やvolumesのUID調整が必要です。

コメント

タイトルとURLをコピーしました