WordPressで外部アクセス禁止設定にするファイルやフォルダ Nginx
比較的規模の小さなサイト、またはコンテンツ量が少ないサイトの場合、WEBサーバーのApacheサーバと比較してあまり体感速度の変化は感じられませんが、手間をかけてでもNginxサーバとPHP-fpmでWordpressを動作させておくと、あとあとセキュリティの面でも有効かもしれません。
通常のApacheを運用していると、どこでも.htaccessの設置が許可されており、どこに何の設定を行っているのか?
直ぐに分からないからです。
NginxはApacheの.htaccessをサポートしていません。
今回は、セキュリティ対策としてNginx上のWordpressで外部アクセス禁止の設定を行います。
外部の不正なアクセスから、機能(ファイルやフォルダ)、コンテンツを守ることができます。
・Wordpressの本体スクリプトからのみ読むこまれるべきファイルはアクセス禁止!
・コンテンツ、テンプレート(html,js,css,jpg,png,gifなど)などのファイルは直接アクセス禁止!
・uploadsフォルダ内のphpファイルなどは、プログラムとして実行させない。万が一、悪意あるプログラムをアップロードされても、実行まではされません。
下記の設定を設定ファイルに追加するだけで有効になります。
location ~* wp-admin/includes { deny all; }
location ~* wp-includes/theme-compat/ { deny all; }
location ~* wp-includes/js/tinymce/langs/.*\.php { deny all; }
location /wp-content/ { internal; }
location /wp-includes/ { internal; }
location ~* ^/wp-content/uploads/.*.(html|htm|shtml|php)$ {
types { }
default_type text/plain;
}
元参考サイト Bigdinosaur Blog
blog.bigdinosaur.org/wordpress-on-nginx/
意味もなく一時的にサーバートラフィックが上がっている場合は、検索エンジンのロボットでは無く、セキュリティホール探しのボットからのアクセスかもしれません。
セキュリティホールを探しだすボットが活発に活動しているこのご時世、セキュリティ対策とサーバリソースの低減はセットなのかもしれませんね。