WordPress でファイルのアクセス許可を正しく設定する方法

公開: 2022-09-13

WordPress サイトを管理したことがあれば、プラグインやテーマをインストールできない、メディア ライブラリに画像をアップロードできない、サイトにあるはずのファイルが見つからないなどの問題に遭遇したことがあるかもしれません。正しく表示されません。

これらすべての問題の中心にあるのはファイルのパーミッションの概念ですが、Web サーバーを管理したことがない場合、ファイルのパーミッションとは何か、どのように機能するのか、そもそもどのように設定が間違っているのかよくわからないかもしれません。

この記事では、ファイルのパーミッションと、WordPress でのパーミッションの仕組みについて知っておくべきことをすべて見ていきます。

ファイル権限エラーが発生する可能性が最も高い特定のインスタンスをいくつか調べ、これらのエラーを診断してデバッグする方法を調査します。

ファイルのパーミッションとは何ですか?

最も初期のマルチユーザー コンピューター システムから、ファイル システムのどの部分にどのユーザーがアクセスできるかを決定するために、ファイル アクセス許可が必要でした。

たとえば、通常、各ユーザーには「ホーム」フォルダーがあり、ユーザーはアクセスできますが、システム上の他のユーザーはアクセスできません。

これを可能にするのは、次の 3 つのカテゴリに分類される一連のファイル アクセス許可です。

  1. 所有者が持つ権限。
  2. ファイル グループが持つ権限。
  3. 全員が持つ権限。

これらの権限は通常、数値または文字列のいずれかで表されます。 これらの数字と文字のそれぞれが表すファイル許可は、どちらの場合も同じです。

WordPress.org から取得したファイル権限の例

これらのアクセス許可の設定方法によって、特定のファイルにいつでもアクセスできるユーザーが決まります。

WordPress でファイルのパーミッションはどのように使用されますか?

ほとんどの場合、WordPress サイトを実行しているサーバーは特定のユーザーとして実行されています。

システム上のすべてのユーザーと同様に、Web サーバー ユーザーが所有するファイルは、そのユーザーがアクセスできる傾向があり、したがって、ユーザーが実行している WordPress インストールからもアクセスできます。

WordPress が更新を実行し、ユーザーがメディアをアップロードできるようにし、プラグインとテーマをインストールし、WordPress が実行するほとんどすべてのことを実行するには、WordPress インストール内のさまざまなディレクトリにアクセスするためのアクセス許可が必要であるため、これは重要です。

WordPress を実行しているシステム ユーザーがアップロード ディレクトリへの書き込みアクセス権を持っていない場合、たとえば、WordPress 管理領域内でメディアをアップロードしようとすると、エラー メッセージが表示され、メディア ライブラリに何も追加できません。 .

一方、あまりにもオープンな権限を設定すると、誰でも WordPress インストール内のファイルを変更できるようになり、セキュリティ上のリスクにもなります.

そのため、ファイルのパーミッションを正しく設定することが非常に重要です。 管理対象ホストを使用している場合、これらはすでに構成されている可能性があります。

777に気をつけて

ファイル権限エラーに遭遇し、オンラインで解決策を探し始めた場合、多くのチュートリアルでは、WordPress インストール内の 1 つまたは複数のディレクトリのファイル権限を「777 権限」に設定することを推奨しています。

これは可能な限り最もオープンなアクセス許可のセットであり、誰でもそのディレクトリ内のすべてのものを読み書きできることを意味します。

問題のあるディレクトリのパーミッションを 777 に設定する背後にある考え方は、これを行うと、問題が解決された場合、ファイルのパーミッションが問題であり、どのディレクトリに不適切なパーミッションが設定されている可能性があるかをより深く調べることができるということです。

これは一時的なデバッグには問題ありませんが、ディレクトリをこのレベルのアクセス許可で長期間放置することはセキュリティ リスクです。 ディレクトリのいずれかをこれらの完全にオープンなパーミッションに設定したままにしておくと、WordPress の仕組みとディレクトリ構造に詳しい人なら誰でもファイルにアクセスできる可能性があります。

アクセス許可を 777 に設定してそのままにしておくことは、基本的に、アパートから締め出され、ドアのロックを解除し、そのままにしておくようなものです。

その時点で問題解決しますが、他のセキュリティの脆弱性にさらされることにもなります。 これらのファイルのアクセス許可を開いたままにしておくと、WordPress サイトや一般的な Web サーバーは、プラグインのハッキングや悪用、および Web の広い範囲で実行される自動化された攻撃に対して脆弱になります。

ファイル権限による一般的なエラー

ファイル許可がどのように使用され、WordPress 内でどのように機能するかについて少し理解できたので、ファイル許可が正しく設定されていないことが原因で発生する可能性のあるエラーのいくつかを見てみましょう.

テーマ、プラグイン、または WordPress コアのインストール/更新に失敗する

更新を実行している、または新しいテーマやプラグインをインストールしているときに、プラグインをインストールできない、または更新を完了できないというエラーが発生することがあります。

多くの場合、これはファイルのアクセス許可の問題であり、具体的には、WordPress を実行している Web サーバー ユーザーと、 wp-contentディレクトリへのアクセス権と所有権を持つ Web サーバー ユーザーとの間の不一致です。 これは、FTP 経由でwp-contentディレクトリ内のファイルを更新するときによく発生します。

この場合、FTP 経由でアップロードしたディレクトリの所有権は FTP ユーザーに設定されますが、WordPress を実行している Web サーバー ユーザーは異なります。 WordPress が新しいテーマまたはプラグインをインストールしようとすると、WordPress がフォルダーに対する所有権を持っていないため、Web サーバーはこの試みを拒否します。

これは、WordPress が wp-content フォルダー内のファイルを挿入または変更するための適切な権限を持っていないことを意味します。これが、インストールまたは更新が失敗する理由です。

メディアのアップロードが失敗する

メディアのアップロードが常に失敗するが、サイズが大きすぎる、または形式が正しくないというエラー メッセージが表示されない場合は、ファイルのアクセス許可エラーも発生している可能性があります。

WordPress に関連付けられている Web サーバー ユーザーがwp-contentディレクトリまたはuploadsディレクトリにアクセスする権限を特に持っていない場合、アップロードされたメディア ファイルは正しいディレクトリに転送できず、アップロードは次のように報告されます。失敗した。

メディア ファイルはサーバー上に存在するが、ブラウザからアクセスすると 404 になる

特に、WordPress サイトをバックアップから復元したり、ホスト間で移行したりした後、メディア ファイルがサイトに正しくアップロードされ、 wp-content/uploadsディレクトリに存在しているにもかかわらず、メディア ファイルがブラウザでアクセスしようとしています。

これが発生した場合、通常は、Web サーバーを実行しているオペレーティング システムのユーザーがサーバー上の画像にアクセスする権限を持っていないため、訪問者のブラウザーに画像を提供できないことを意味します。

上記の問題と解決策と同様に、 wp-contentから始めて、 uploads 、月ごとの各ディレクトリ、および画像自体を通じてダウンする各ディレクトリを確認し、Web サーバーのユーザーがこれらすべてのフォルダーに対する読み取り権限を持っていることを確認する必要があります。メディアがブラウザで訪問者に適切に表示されるようにします。

ファイルの一般的なアクセス許可エラーを修正する方法

一般的なファイル許可エラーを修正する最も簡単な方法は、WordPress が期待するようにファイル許可が設定されていることを確認することです。

まず、WordPress を実行している同じ Web ユーザーが、WordPress が実行されているルート ディレクトリ (これは wp-config.php ファイルが存在するディレクトリです) に対する所有権を持っていることを確認します。

その後、このディレクトリ内のすべての WordPress ファイル、および wp-content ディレクトリとその下のすべてのディレクトリが同じユーザーによって所有されていることを確認してください。

cPanel を使用する Web ホストを使用している場合は、これらのアクセス許可を cPanel 内から直接変更できます。 ただし、サーバーへの SSH アクセスがあり、Linux ベースのサーバー (ほとんどの Web サーバーがそうです) を実行している場合は、少し異なる方法に従う必要があります。

その他の潜在的なファイル許可エラー

コアの WordPress と基本的なテーマとプラグインの機能以外にも、ファイルのパーミッション関連のエラーが発生する可能性がある場所がいくつかあります。

つまり、一部のプラグインは WordPress サイトのファイルシステムを使用して作業を行っており、ファイル構造内で必要な作業を行うことができない場合、奇妙なエラーがポップアップ表示されることがあります。

多くの場合、これらはバックアップ プラグイン (バックアップをwp-contentディレクトリ内に保存する場合があります) とキャッシュ プラグイン (静的キャッシュを生成してwp-contentディレクトリ内に保存する場合があります) です。

これらの種類のプラグインのいずれかでエラーが発生し始めた場合、修正は上記と同じです。 WordPress を実行している Web サーバー ユーザーがwp-contentディレクトリの所有者であり、そのディレクトリへのアクセス許可を持っていることを確認して、インストールされたプラグインが保存する必要のあるファイルをそこに配置できるようにする必要があります。

WordPressの正しいファイル権限は何ですか

インストールごとに多少異なる場合がありますが、WordPress のさまざまな種類のファイルとフォルダーに対してどのようなファイル権限を設定する必要があるかについて、一般的なガイドラインがあります。

一般に、WordPress のガイドラインによると、 「ファイルのアクセス許可を可能な限りロックダウンし、書き込みアクセスを許可する必要がある場合は制限を緩めるか、または目的のために制限の少ない特定のフォルダーを作成することが最善です。ファイルのアップロードなどを行っています。」

そのことを念頭に置いて、さまざまな権限の設定が必要なサイトの領域がいくつかあります。 WordPress ルート以下のほとんどのファイルは、ユーザー アカウントによって所有され、そのアカウントから書き込み可能である必要があります。ただし、WordPress がこれらのファイルに変更を加えることができるように、Web サーバーによって書き込み可能である必要がある他の場所がいくつかあります。

wp-content内で、特に自動更新を実行したり、WordPress 内からテーマ エディターを使用したりする場合は、 themesplugins 、およびuploadsディレクトリが Web サーバーによって書き込み可能である必要があります。

これらの機能を使用したくない場合は、これらのディレクトリを Web サーバーが書き込めないようにすることで、より安全にすることができます。 これにより、これらのファイルに悪意のある変更が加えられる可能性をなくすことなく、サイトを通常どおり機能させることができます.

まとめ

ほとんどの WordPress サイト所有者が対処しなければならない問題ではありませんが、特にマネージド ホスティングの台頭以降、ファイルのアクセス許可は依然としてデバッグが困難なエラーを生成する可能性があります。

ただし、ファイルのアクセス許可が正しく設定されていないという根本的な原因がある兆候と一般的な種類のエラーを知っていれば、サイトを軌道に乗せるプロセスを高速化できます。

ファイルのアクセス許可と、WordPress サイトの下にあるオペレーティング システムがどのように動作するかについて少し知ることで、潜在的なアクセス許可エラーをより迅速に解決し、他のユーザーが同じことを行うのを助けることができます!

エディターズ・ピック