あなたのWordPressサイト用の15の便利な.htaccessスニペット
を持っている 適切に設定された.htaccessファイル あなたがしたい場合は重要です セキュリティを強化する そして 脆弱性を減らす あなたのWordPressサイトで。通常、作成の主な目的は カスタム.htaccessファイル あなたのサイトがハッキングされるのを防ぐことですが、リダイレクトの処理やキャッシュ関連のタスクの管理にも優れた方法です。.
.htaccessは 設定ファイル Apache Webサーバーで使用されます。ほとんどのWordPressサイト Apacheサーバー上で実行する, ごく一部ですが Nginxを搭載. この記事では、あなたが見つけることができます .htaccessコードスニペットのコレクション, 他の便利な機能を実装している間あなたのウェブサイトを保護するために使用できるほとんどのもの.
忘れないで .htaccessファイルをバックアップします。 いつでもできるように編集する前に 前のバージョンに戻る 問題が発生した場合.
そして、もしあなたが設定ファイルに触れない人であれば、 防弾セキュリティ 最も信頼できる(そしておそらく最も古い)プラグイン 無料の.htaccessセキュリティプラグイン 市場で.
デフォルトのWPを作成します。
.htaccessは ディレクトリごと つまり、各ディレクトリは独自の.htaccessファイルを持つことができます。あなたのWordPressサイトが簡単に起こることがあります .htaccessファイルがまだありません. ルートディレクトリに.htaccessファイルが見つからない場合 空のテキストファイルを作成する そしてそれに名前を付ける .htaccess
.
以下に、あなたは見つけることができます デフォルトの.htaccess WordPressが使用しています。このコードが必要なときはいつでもWordPressコーデックスで素早く調べることができます。 WP Multisiteには別の.htaccessがあることに注意してください。.
#BEGIN WordPressRewriteBase / RewriteRule ^ index \ .php $ - [L] RewriteCond%REQUEST_FILENAME!-f RewriteCond%REQUEST_FILENAME!-d RewriteRule。 /index.php [L] #ENDワードプレス
で始まる行 #
コメントです. 何も編集しない 行間 #BEGIN WordPress
そして #ENDワードプレス
. カスタム.htaccessルールを追加する これらのデフォルトルールより下.
この記事で見つけることができるすべてのコードスニペット コアの.htaccessファイルに行く ルートディレクトリにあります.
1.すべての.htaccessファイルへのアクセスを拒否する
以下のコード アクセスを拒否する あなたのWordPressにインストールしたすべての.htaccessファイルに。このようにすると、他人があなたに会うのを防ぐことができる Webサーバー構成.
#すべての.htaccessファイルへのアクセスを拒否注文を許可する、拒否するすべてから拒否するすべてを満足する
2. WP設定を保護します
の wp-config.php
ファイルは すべてのWP設定, データベースのログインとパスワードを含みます。あなたは誰からでもそれを否定することもできるし 管理者にアクセス許可を与える.
後者を選択した場合 コメントアウト の #xx.xx.xx.xxxから許可する
行(削除する #
行の先頭から) 管理者のIPアドレスを入力 代わりに xx.xx.xx.xxx
.
#wp-configを保護する注文許可、拒否#xx.xx.xx.xxxからの許可#yy.yy.yy.yyyからの許可すべてからの拒否
3. XML-RPC DDoS攻撃を防ぐ
ワードプレス XML-RPCをサポート デフォルトでは、 リモートパブリッシングを行うインタフェース 可能。ただし、これは優れた機能ですが、ハッカーが抱える可能性があるWPの最大のセキュリティ上の脆弱性の1つでもあります。 DDoS攻撃に利用する.
この機能を使いたくない場合は、 無効にする. 前と同じように、できます コメントアウトして例外を追加する の #xx.xx.xx.xxxから許可する
管理者のIPアドレスを追加して追加する.
#XML-RPCを保護し、DDoS攻撃を防ぐ注文の拒否、許可#xx.xx.xx.xxxからの許可#yy.yy.yy.yyyからの許可すべてからの拒否
4.管理領域を保護する
それはまたよい考えです 管理領域を保護する 管理者だけにアクセス権を与えることによって。ここで、忘れないでください 少なくとも1つ追加する “許可する” 例外 それ以外の場合は、管理者にアクセスできません。.
#管理エリアをIPで保護するAuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress管理アクセス制御" AuthType Basic注文拒否、すべてからの拒否を許可xx.xx.xx.xxxからの許可、yy.yy.yy.yyyからの許可
5.ディレクトリリストを禁止する
ほとんどのWordPressサイトはディレクトリ一覧を無効にしません。 自分のフォルダとファイルを閲覧する, メディアのアップロードやプラグインファイルを含みます。これが大きなセキュリティ上の脆弱性であることは言うまでもない.
以下に、あなたはどのように見ることができます 典型的なWordPressのディレクトリ一覧は以下のようになります。.
幸いなことに、あなただけが必要です 1行のコード この機能をブロックします。このコードスニペットは 403エラーメッセージを返す あなたのディレクトリにアクセスしたい人へ.
#ディレクトリの一覧表示を禁止する
6.ユーザー名の列挙を禁止する
WPパーマリンクが有効になっていれば、とても簡単です。 ユーザー名を列挙する 著者アーカイブを使用する。公開されたユーザー名(管理者のユーザー名を含む)は、その後で使用することができます。 総当たり攻撃.
以下のコードを.htaccessファイルに挿入してください。 ユーザー名の列挙を防ぐ.
#ユーザー名の列挙を防ぎますRewriteCond%QUERY_STRING author = d RewriteRule ^ /? [L、R = 301]
7.スパマーやボットをブロックする
時にはあなたがしたいことがあります 特定のIPアドレスからのアクセスを制限する. このコードスニペットは、あなたがすでに知っているスパマーやボットをブロックする簡単な方法を提供します。.
#スパマーとボットをブロック注文を許可、拒否xx.xx.xx.xxxから拒否yy.yy.yy.yyyから拒否 すべてから許可
8.画像のホットリンクを防ぐ
セキュリティ上の脅威ではありませんが, 画像のホットリンク まだ迷惑なものです。人々だけではない 許可なく画像を使用する しかし彼らはあなたの犠牲でそれをやる。これらの数行のコードで、あなたはあなたのサイトを画像のホットリンクから保護することができます。.
#RewriteCondで画像のホットリンクを防止するRewriteEngine%HTTP_REFERER!^ $ RewriteCond%HTTP_REFERER!^ http(s)?://(www \。)?yourwebsite.com [NC] RewriteCond%HTTP_REFERER!^ http( s)?://(www \。)?yourwebsite2.com [NC] RewriteRule \。(jpe?g?| png | gif | ico | pdf | flv | swf | gz)$ - [NC、F、L]
9.プラグインとテーマのPHPファイルへの直接アクセスを制限する
誰かがしていると危険です。 プラグインとテーマファイルを直接呼び出す, それが偶然に起こるのか悪意のある攻撃者によって起こるのか。このコードスニペット Acunetixウェブサイトセキュリティ会社から来ています;あなたは彼らのブログ記事でこの脆弱性についてもっと読むことができます.
#プラグインおよびテーマディレクトリからPHPファイルへのアクセスを制限するRewriteCond%REQUEST_URI!^ / wp-content / plugins / file / to / exclude \ .php RewriteCond%REQUEST_URI!^ / wp-content / plugins / directory / to / exclude / RewriteRule wp-content / plugins /(。* \。php)$ - [R = 404、L] RewriteCond%REQUEST_URI!^ / wp-content / themes / file / to / exclude \ .php RewriteCond% REQUEST_URI!^ / wp-content / themes /ディレクトリ/ to / exclude / RewriteRule wp-content / themes /(。* \。php)$ - [R = 404、L]
10.恒久的なリダイレクトを設定する
簡単にできます 恒久的なリダイレクトを処理する .htaccessを使って。まずあなたが追加する必要があります 古いURL, その後に従ってください 新しいURL これは、ユーザーをリダイレクトしたいページを指しています。.
#恒久的なリダイレクトリダイレクト301 / oldurl1 / http://yoursite.com/newurl1リダイレクト301 / oldurl2 / http://yoursite.com/newurl2
11.訪問者をメンテナンスページに送る
このテクニックについてここで詳細に書きました。あなたには必要だ 別メンテナンスページ (maintenance.html
この.htaccessルールが機能するための例では)。このコードはあなたのWordPressサイトを置きます メンテナンスモードに入る.
#メンテナンスページにリダイレクトしますRewriteCond%REMOTE_ADDRのRewriteEngine!^ 123 \ .456 \ .789 \ .000 RewriteCond%REQUEST_URI!/maintenance.html$ [NC] RewriteCond%REQUEST_URI!\(jpe?g?| png | gif) )[NC] RewriteRule。* /maintenance.html [R = 503、L]
12. WPインクルードへのすべてのアクセスを制限する
の / wp-includes /
フォルダ コアWordPressファイルが含まれています それはCMSが機能するために必要です。ユーザーがここにアクセスしたいと思うコンテンツ、プラグイン、テーマ、その他はありません。セキュリティを強化するためには すべてのアクセスを制限する.
#すべてのwp-includesフォルダとファイルをブロックするRewriteBase / RewriteRule ^ wp-admin / includes / - [F、L] RewriteRule!^ wp-includes / - [S = 3] RewriteRule ^ wp-includes / [^ /] + \。php $ - [F、 RewriteRule ^ wp-includes / js / tinymce / langs /.+ \。php - [F、L] RewriteRule ^ wp-includes / theme-compat / - [F、L]
13.クロスサイトスクリプティングをブロックする(XSS)
次のコードスニペットはWP Mixからのもので、それはあなたのサイトを以下から保護します。 いくつかの一般的なXSS攻撃, すなわちスクリプトインジェクションとグローバル変数とリクエスト変数の変更を試みます。.
#いくつかのXSS攻撃をブロックRewriteCond%QUERY_STRING(\ |%3E)[NC、OR] RewriteCond%QUERY_STRING GLOBALS(= | \ [| \%[0-9A-Z] 0,2)[または] RewriteCond%QUERY_STRING _REQUEST(= | \ [| \%[0-9A-Z] 0,2)RewriteRule。* index.php [F、L]
14.ブラウザのキャッシュを有効にする
前述したように、.htaccessはセキュリティ上の理由とリダイレクトのためだけでなく、あなたを助けることもできます キャッシュを管理する. 以下のコードスニペットはElegant Themesからのものです。 ブラウザのキャッシュを可能にする 訪問者を有効にすることによって 特定の種類のファイルを保存する, 次回訪問したときは、再度ダウンロードする必要はありません。.
#ブラウザのキャッシュを有効にしますExpiresByType image / jpg "アクセス1年" ExpiresByType image / jpeg "アクセス1年" ExpiresByType image / gif "アクセス1年" ExpiresByType image / png "アクセス1年" ExpiresByType text / css "アクセス1年" ExpiresByType application / exp " pdf "アクセス1ヶ月" ExpiresByType text / x-javascript "アクセス1ヶ月" ExpiresByTypeアプリケーション/ x-shockwave-flash "アクセス1ヶ月" ExpiresByType image / x-icon "アクセス1年" ExpiresDefault "アクセス2日"
15.カスタムエラーページを設定する
あなたのWordPressサイトにカスタムエラーページを設定するために.htaccessを使うことができます。この方法が機能するには、次のことも必要です。 カスタムエラーページを作成する (custom-403.html
, custom-404.html
例では)と それらをアップロードする ルートフォルダに.
カスタムエラーページを設定することができます。 任意のHTTPエラーステータスコード (4XXおよび5XXステータスコード)必要なもの.
#カスタムエラーページを設定します。ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html