セキュリティ上の理由から、私は新しいWordPressインストールでは実行されないスクリプトへのアクセスをブロックする必要があります。
例:
どのファイルがインクルードされ、実際にどのファイルが実行可能である必要があるかに関する情報は誰にでもあります?
私はこのように、.htaccessで実行できる有効なファイルのリストを作りたいです。
更新:
これは私が持っている.htaccessファイルです - 私の実際の質問:この設定は完了していますか、それとも新しいWordPressを正しくインストールするためにより多くのファイルを許可する必要がありますか?
<IfModule mod_rewrite.c>
# ONLY ALLOW THESE SCRIPTS TO EXECUTE:
# == Login, Signup, Activate
RewriteRule ^wp-login.php - [L]
RewriteRule ^wp-activate.php - [L]
RewriteRule ^wp-signup.php - [L]
# == All admin scripts and WYSIWYG editor
RewriteRule ^wp-admin/ - [L]
RewriteRule ^wp-includes/js/tinymce/wp-tinymce.php - [L]
# == WP Cron and mail
RewriteRule ^wp-cron.php - [L]
RewriteRule ^wp-mail.php - [L]
# == WP Comments form
RewriteRule ^wp-comments-post.php - [L]
# (...) <-- I need to know which other files need to be allowed
# BLOCK ALL OTHER SCRIPTS
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule \.(php.?|pl|cgi)$ - [F,L]
</IfModule>
WP管理アーキテクチャのため、これは本当にコンパイルして確実に維持するのに不便なリストになります。
私が最もよく知っていると思うのは、これらのファイルの多く(ただし全部ではないが単なるではない)が機能するためには管理者ブートストラップ(wp-admin/admin.php
)が必要だということです。
それぞれのディレクティブをクイック検索したところ、次のような結果が得られました。
C:\server\www\dev\wordpress\src>ack --files-with-matches --literal "require_once( dirname( __FILE__ ) . '/admin.php' );"
wp-admin/about.php
wp-admin/admin-header.php
wp-admin/comment.php
wp-admin/credits.php
wp-admin/customize.php
wp-admin/edit-comments.php
wp-admin/edit-tags.php
wp-admin/edit.php
wp-admin/export.php
wp-admin/freedoms.php
wp-admin/import.php
wp-admin/index.php
wp-admin/link-add.php
wp-admin/link-manager.php
wp-admin/link.php
wp-admin/media-new.php
wp-admin/media-upload.php
wp-admin/media.php
wp-admin/ms-admin.php
wp-admin/ms-delete-site.php
wp-admin/ms-edit.php
wp-admin/ms-options.php
wp-admin/ms-sites.php
wp-admin/ms-themes.php
wp-admin/ms-upgrade-network.php
wp-admin/ms-users.php
wp-admin/my-sites.php
wp-admin/nav-menus.php
wp-admin/network/about.php
wp-admin/network/credits.php
wp-admin/network/edit.php
wp-admin/network/freedoms.php
wp-admin/network/index.php
wp-admin/network/plugin-editor.php
wp-admin/network/plugin-install.php
wp-admin/network/plugins.php
wp-admin/network/profile.php
wp-admin/network/settings.php
wp-admin/network/setup.php
wp-admin/network/site-info.php
wp-admin/network/site-new.php
wp-admin/network/site-settings.php
wp-admin/network/site-themes.php
wp-admin/network/site-users.php
wp-admin/network/sites.php
wp-admin/network/theme-editor.php
wp-admin/network/theme-install.php
wp-admin/network/themes.php
wp-admin/network/update-core.php
wp-admin/network/update.php
wp-admin/network/upgrade.php
wp-admin/network/user-edit.php
wp-admin/network/user-new.php
wp-admin/network/users.php
wp-admin/network.php
wp-admin/options-discussion.php
wp-admin/options-general.php
wp-admin/options-media.php
wp-admin/options-permalink.php
wp-admin/options-reading.php
wp-admin/options-writing.php
wp-admin/options.php
wp-admin/plugin-editor.php
wp-admin/plugin-install.php
wp-admin/plugins.php
wp-admin/post-new.php
wp-admin/post.php
wp-admin/press-this.php
wp-admin/revision.php
wp-admin/term.php
wp-admin/theme-editor.php
wp-admin/theme-install.php
wp-admin/themes.php
wp-admin/tools.php
wp-admin/update-core.php
wp-admin/update.php
wp-admin/upload.php
wp-admin/user/about.php
wp-admin/user/credits.php
wp-admin/user/freedoms.php
wp-admin/user/index.php
wp-admin/user/profile.php
wp-admin/user/user-edit.php
wp-admin/user-edit.php
wp-admin/user-new.php
wp-admin/users.php
wp-admin/widgets.php
私はこのbashコマンドを使ってWordPressのファイルパーミッションを素早く簡単にリセットします。あなたのroot WPフォルダに移動して両方を実行してください。
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
WordPressのファイル/フォルダのパーミッションは以下の通りです。
ディレクトリ用:755
ファイルの場合:644
以下を除きます。
/ wp-content/774
/ wp-content/themes/= 755または775(編集可能に設定)
/ wp-content/plugins/= 755いくつかのプラグインは文句を言うでしょうが、それらが書き込みアクセスを必要とするならそれらはあなたに知らせるでしょう。
/ wp-content/uploads/= 775ディレクトリにのみ再帰的に適用することを確認します。このフォルダ内のファイルは、その内容によってアクセス許可が異なります。
777は絶対に使わない
次のページに記載されている情報が役立ちます。
http://codex.wordpress.org/Changing_File_Permissionshttp://codex.wordpress.org/Hardening_WordPresshttps://stackoverflow.com/a/18352747/1287548http: //www.smashingmagazine.com/2014/05/08/proper-wordpress-filesystem-permissions-ownerships/
.htaccessを使用してファイルの実行を許可/禁止するには、次のスレッドとページに記載されている回答を参照してください。
https://stackoverflow.com/a/8415600/1287548https://stackoverflow.com/a/ 11950077/1287548http://www.wpbeginner.com/wp-tutorials/how-to-disable-php-execution-in-certain-wordpress - ディレクトリ/http://perishablepress.com/stupid-htaccess-tricks/