WordPress
その他
運営中のサブブログ
主に私のデスク周りアイテムを紹介しています。
在宅作業の参考になるかもしれません。
運営中のサブブログ
主に私のデスク周りアイテムを紹介しています。
在宅作業の参考になるかもしれません。
サーバーをいろいろ制御できるファイルです。
今回設定するのは、以下の3つ
リダイレクト設定とは、SSL化されていないURLからでもSSL化されたURLに飛ばすことを指します。
http://〜|SSL化されていない
https://〜|SSL化されている
インターネット通信を暗号化する技術。
暗号化することで、個人情報の漏洩リスクを下げれる。
例えば、ユーザーにサイトのURLをシェアされたり、被リンクを貼ってもらった場合、間違えてhttp://のURLが使われてしまうかもしれません。
その場合でも、常にSSL化されたサイトを表示できるようにします。
試しに当サイト「http://kagesai.net」にアクセスしてみてください。
https://〜で表示されるはずです。
例えば、mixhost の場合デフォルトだとURLは以下のように分かれています。
URLが分かれた状態とは、ドメインパワーが分散されるイメージです。
そこで、どのURLからアクセスしても「https://ドメイン」になるように統一します。
レンタルサーバーでドメインを取得した方は、プライマリドメイン以降は無視してください。
cPanelにログイン後、右側に表示されています。
WordPressのログインURLはデフォルトだと
“https://ドメイン/wp-login.php“になっています。
もちろんユーザー名やパスワードがわからなければ、ログインされることはありません。
ただURLを任意のものに変更しておけば、そもそもログイン画面に入られることもなくなります。
セキュリティ対策として、やっておきましょう。
それでは、ここまで解説した3つを編集していきます。
当サイト契約のレンタルサーバーmixhost を前提に解説していますが、やり方は他のサーバーでも同じです。
ファイルマネージャーを開く
①設定をクリック
②隠しファイルを表示にチェック
③Saveをクリック
①public_htmlフォルダを展開
②ドメインフォルダをクリック
③.htaccessファイルをクリック
④ダウンロードをクリック
コードにミスがあると、サイトが404エラーになります。
すぐに元の状態に戻せるようバックアップを取っておきましょう。
⑤.htaccessファイルの上で右クリック
⑥Editをクリック
⑦Editをクリック
# BEGIN LSCACHEの上に以下のコードをコピペしてください。
<!-- SSLリダイレクト設定 -->
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</IfModule>
<!-- URLの正規化 -->
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.kagesai\.net$
RewriteRule ^(.*)$ https://kagesai.net/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://kagesai.net/$1 [R=301,L]
<!-- プライマリドメインから独自ドメインへ -->
RewriteCond %{HTTP_HOST} ^kagesai\.プライマリドメイン\.〇〇\.〇〇$ [NC]
RewriteRule (.*) https://kagesai.net/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.kagesai\.プライマリドメイン\.〇〇\.〇〇$ [NC]
RewriteRule (.*) https://kagesai.net/$1 [R=301,L]
<!-- ここまで -->
<!-- ログインURL変更 -->
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^enter/?$ /wp-login.php?abcd1234 [R,L]
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^dashboard/?$ /wp-login.php?abcd1234&redirect_to=/wp-admin/ [R,L]
RewriteRule ^dashboard/?$ /wp-admin/?abcd1234 [R,L]
RewriteRule ^register/?$ /wp-login.php?abcd1234&action=register [R,L]
RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php
RewriteCond %{HTTP_REFERER} !^(.*)https://kagesai.net/wp-admin
RewriteCond %{HTTP_REFERER} !^(.*)https://kagesai.net/wp-login\.php
RewriteCond %{HTTP_REFERER} !^(.*)https://kagesai.net/enter
RewriteCond %{HTTP_REFERER} !^(.*)https://kagesai.net/dashboard
RewriteCond %{HTTP_REFERER} !^(.*)https://kagesai.net/register
RewriteCond %{QUERY_STRING} !^abcd1234
RewriteCond %{QUERY_STRING} !^action=logout
RewriteCond %{QUERY_STRING} !^action=rp
RewriteCond %{QUERY_STRING} !^action=register
RewriteCond %{QUERY_STRING} !^action=postpass
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L]
RewriteCond %{QUERY_STRING} ^loggedout=true
RewriteRule ^.*$ /wp-login.php?abcd1234 [R,L]
</IfModule>
赤字:自分のドメインに変更(最大12箇所)
青字:レンタルサーバーでドメインを取得した方は不要
オレンジ:自分のプライマリドメインを入力(2箇所)
〇〇の中は、例えばamazon.co.jpであれば、coとjp部分です。
amazon.jpなど2つの場合もありますので、必ず確認してください。
緑字:任意のログインパスワードへ変更(6箇所)
サンプルだと
https://kagesai.net/wp-login.php?abcd1234が新たなログインURLとなります。
シークレットモードでデフォルトのhttps://自分のドメイン/wp-login.phpで検索をかけてみましょう。
404エラーページが表示されればOKです。
シークレットモードのショートコード
Mac:Command+Shift+N
Windows:Ctrl+Shift+N
続いて、設定したログインURLで検索をかけます。
WordPressのログイン画面が表示されれば完了です。
以上、WordPressの.htaccess編集を解説しました。
URLの正規化はそこまで重要ではないですが、ログインURLはプラグインを使わなくても簡単に変更できますので、ぜひやってみてください。
この記事が気に入ったら
フォローしてね!
記事への質問等はこちらからどうぞ
この記事へのコメント数 (4件)
詳しい方法が書いてあるサイトがなかったので、とても助かりました!
いちおう自分はわかったのですが、たぶんHTML全く知らない人は勘違いする人いると思いますよ。
【緑字部分はご自身の初期サブドメインに変更】の部分ですが、
kagesai.初期サブドメイン.mixh.jp
kagesai.kagesai.mixh.jp.mixh.j
たぶん↑こんな感じで入力しちゃう人多いと思います。あとkagesaiが赤字になっていないところもありますよー。
むむむ様
返信が遅くなりましたが、コメントありがとうございます。
初期サブドメインの件、注意書きを追加いたしました。
また赤字になっていない件、大変失礼いたしました。(現在・修正済みです)
今後ともカゲサイをよろしくお願いします。
カゲサイ
質問です。
管理画面へのアクセス制限の設定を試みたのですが、間違ったのか管理画面にログインできなくなりました。
元に戻す方法ありますでしょうか?
shokopanda様
mixhostの管理画面から「.htaccess」フォルダに入って、今回追記した部分を削除すれば元に戻りますよ。
参考:ファイルマネージャーで非表示ファイル(.htaccessなど)を表示する方法
またこうした事が起きないよう、記事中で別タブを開いておくようにと案内しているので次回からはご注意くださいませ〜。