WordPress手動インストール時のファイルパーミッション変更
WordPressをインストールを行なう際にダウンロードしたファイルを
そのままアップロードして配置した場合には、
基本的にはファイルパーミッションの変更などを行う必要がないとされています。
ただWindows環境などからファイルをアップロードした際などには、
Windows環境にはないUnixやLinuxのファイルパーミッションの概念だけに、
意図的にファイルのパーミッションを指定しておいた方がいいと思っています。
ここではWindows環境からアップロードしたファイルのパーミッション変更を、
FTPクライアントのFileZilla Clientを利用して一括指定する方法をご紹介します。
ファイルパーミッションの変更 – WordPress Codex 日本語版
- 注記 : WordPress を自分でインストールした場合、とくにパーミッションを変更する必要はありません。パーミッションエラーが起こる場合、またはあえて変更したい場合を除いて、パーミッションを無意味に変更しないほうがよいでしょう。
とは書いてあるものの、アップロードしたファイルのパーミッションを確認すると、
パーミッションが設定されていなかったりすることもあります。
私は意図的に変更するほうが好みなので以下の手順で変更しています。
概要
WordPressのファイルパーミッションについて
WordPressをサーバー上に配置した際のパーミッションについては、
WordPressのCodexに対して推奨される設定などが紹介されています。
ファイルパーミッションの変更 – WordPress Codex 日本語版
パーミッション設定例
パーミッションの設定例を説明します。
cgi-bin
ディレクトリ内に PHP スクリプトの実行のためのphp.cgi
とphp.ini
ファイル、そしてアクセス制御のための.htaccess
が設置されている場合、パーミッションは以下のようになります。
- デフォルト設定 (umask 022)
12345 644 -rw-r--r-- /home/user/wp-config.php644 -rw-r--r-- /home/user/cgi-bin/.htaccess644 -rw-r--r-- /home/user/cgi-bin/php.ini755 -rwxr-xr-x /home/user/cgi-bin/php.cgi755 -rwxr-xr-x /home/user/cgi-bin/php5.cgi
- 適切な設定
12345 600 -rw------- /home/user/wp-config.php604 -rw----r-- /home/user/cgi-bin/.htaccess600 -rw------- /home/user/cgi-bin/php.ini711 -rwx--x--x /home/user/cgi-bin/php.cgi100 ---x------ /home/user/cgi-bin/php5.cgi
ロリポの改ざん問題などで一時期話題になったこのパーミッション問題ですが、
最低限、「/home/user/wp-config.php」に関しては、
「600」には変更しておくことが推奨されています。
phpファイルを一括して600へ変更
ファイルのパーミッションを指定した転送やファイルのパーミッション変更に関しては、
利用するFTPクライアントによって異なっています。
FFFTPによるパーミッション指定による転送(参考)
FFFTPを利用してファイルのアップロードを行っている場合には、
アップロードする過程でファイルのパーミッションを指定してアップロードすることが可能です。
アップロードの際の転送ルールとして指定することができます。
[ファイル]-[環境設定]を選択します。
表示されたダイアログにて[転送3]タブを選択し、
ファイル名の条件指定と適用するパーミッションを指定することで、
アップロードする際のパーミッションを一括指定することができるようになっています。
とは言え、FFFTPでは転送エラーのレジュームができなかったりして、
少し不便だったりもします。
FileZilla Clientによるパーミッション一括変更
FileZilla Clientではファイルの転送時にエラーが発生したファイルを、
後から再転送をおこなったりといった機能があって便利です。
ですが、転送時にパーミッションを指定してアップロードする機能がなかったりします。
そこで、FileZilla Clientを利用する際には、
ファイルのアップロード後にファイル名の条件指定を行ってパーミッション変更を行います。
FileZilla Clientを利用したパーミッション一括変更の手順は以下でご紹介しています。
ここではphpファイルを一括して600へ変更しています。
設定ファイルパーミッションを個別に変更
WordPressのドキュメントではその他のファイルパーミッションについても言及されています。
604 -rw—-r– /home/user/cgi-bin/.htaccess
600 -rw——- /home/user/cgi-bin/php.ini
711 -rwx–x–x /home/user/cgi-bin/php.cgi
100 —x—— /home/user/cgi-bin/php5.cgi
こうしたファイルはWordPressをインストールした直後には存在しないものです。
例えば .htaccessファイルで言えば「パーマリンク設定」を行うと自動作成されます。
自動作成された.htaccessファイルのパーミッションは「644」が設定されています。
特に大きな問題になることはないとは思いますが、
推奨設定の「604」に変更しておくといいでしょう。
こうしたファイルのパーミッションは個別にファイルを選択して、
右クリックして表示されるメニューから[ファイルのパーミッション]を選択します。
表示されたダイアログからパーミッションの値を変更します。
[OK]をクリックしてパーミッションの変更を行ったら設定は完了です。
php.iniなどのその他のファイルを追加した際には、
同じようにパーミッションの設定を見直すといいでしょう。
WordPressはWordPress Foundation の登録商標(第5049965号)です。
WordPressロゴ、アイコンその他のマーク等はWordPress Foundation の商標であり、
WordPress Foundation の著作物です。
WordPress.comはWordPress Foundation が管理運営を行うドメインならびにサービスの名称です。
WordPress.com、WordPress.net、WordPress.org、WordPress.tv、
WordPressFoundation.orgはWordPress Foundationが
管理運営を行なう正式なトップレベルドメインであるとともに、
WordPress Foundationが運営を行うサービスの名称です。
wordpressはFree Software Foundation, Inc.によってGPL2+でライセンスされています。
公開日:
最終更新日:2018/03/20