電子書籍ストアおすすめ5社はここ!!

mixhostブログの.htaccess設定は3つだけでOK

WordPressの.htaccess設定

2019年1月30日・初期サブドメインから独自ドメインへリダイレクトするコードも追記しました・

第5回目となる講座は「.htaccess」の設定です。

.htaccessとは?

コードを入力することで、サーバーをいろいろと制御できるファイルです。

当サイトでおすすめしている「MixHost 」以外のサーバーをご契約の方は、今回の設定は当てはまりませんのでご了承ください。

すこーし専門用語多めになりますが、全部を理解しなくとも設定だけしっかりやっていただければ構いません。

そもそも「.htaccess」の設定は中級者以上の項目ですが、当サイトの「WordPress講座」は素人サイトの脱却がコンセプトなので、サクッとやっていきましょう。

今回「.htaccess」で設定するのは以下の3つです。

.htaccessの効果
  1. https://リダイレクト設定
  2. URLの正規化
  3. 管理画面へのアクセス制限

えっ??これだけでいいの?と思ったかもしれません。

他のサーバーだと「キャッシュ」やら「gzip圧縮」やらもあるのですが、当サイトでおすすめしているサーバー「MixHost 」では「LiteSpeed Cache」プラグインを使えるので、大抵の機能はすでに実装されています。

mixhostの.htaccess設定①【https://リダイレクト】

「【脱初心者】強いWordPressブログの始め方を図解で解説」でURLのSSL化(https://〜)を行いました。

ただユーザーがURLからアクセスしたり、参考リンクを貼るときに「http://〜」のSSL化されていないURLを使われる場合があります。

その場合でも「https://〜」の方に飛ばすよう設定します。

こうすることで、常にSSL化されたサイトを表示できるようになるわけですね。

試しに当サイトを「http://kagesai.net」でアクセスしてみてください。「https://〜」表示されるはずです。

LiteSpeed Cache」なら「.htaccess」を管理画面から設定できるので楽チンです。

まず、コードをミスっても復旧できるようトップページのタブを複製しておきましょう。

タブ複製ショートコード
  • Macユーザー⌘command + l(エル)で検索バー選択後command + shift + enterでタブ複製
  • Windowsユーザーctrl + l(エル)で検索バー選択後alt + enterでタブ複製
LiteSpeed Cache.htaccess編集

LiteSpeed Cache」にマウスホバー

.htaccessの編集」をクリック

LiteSpeed Cache.htaccess編集2

# BEGIN LSCACHE」の上に以下のコードを追記してください。

.htaccess
copyする
<IfModule mod_rewrite.c> RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule>

以下のようになればOK

LiteSpeed Cache.htaccess編集3

一番下までスクロールして設定を保存をクリック

コードを追記するごとに、複製した別タブで「トップページ」と「記事」が表示されてるか確認してください。

カゲサイトップページ

コードミスがあると、表示されなかったり、404エラーページになります。

その場合は一旦コードを削除して、もう一度設定を保存をクリックすれば元に戻ります。

mixhostの.htaccess設定②【URLの正規化】

「MixHost」の場合、SSL化したサイトは何もしないとURLが以下のように分かれています。

URLが分かれた状態とは、力(ドメインパワー)が分散されるイメージになります。

そこでどのURLからアクセスしても「https://ドメイン」になるように統一します。(上記リンクは統一してあります。)

初期サブドメインとは?
ミックスホストのプライマリドメイン

契約時に設定したドメインです。(ここは各自違うのでご注意くださいませ〜

MixHostにログイン」して確認してください。

追記:最初からmixhostでドメインを取得した方は、初期サブドメインの設定は不要です

以下のコードを先ほどの「</IfModule>」の下に追記してください。

.htaccess
copyする
<IfModule mod_rewrite.c> RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> Options +FollowSymLinks RewriteEngine on <!-- wwwなしに統一 --> RewriteCond %{HTTP_HOST} ^www\.kagesai\.net$ RewriteRule ^(.*)$ https://kagesai.net/$1 [R=301,L] <!-- index.html(php)なしで統一 --> RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ https://kagesai.net/$1 [R=301,L] <!-- 初期サブドメインから独自ドメインへ --> RewriteCond %{HTTP_HOST} ^kagesai\.初期サブドメイン\.mixh\.jp$ [NC] RewriteRule (.*) https://kagesai.net/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^www\.kagesai\.初期サブドメイン\.mixh\.jp$ [NC] RewriteRule (.*) https://kagesai.net/$1 [R=301,L]

赤字部分ご自身のドメインに変更緑字部分ご自身の初期サブドメインに変更※mixhostでドメインを取得した方は、初期サブドメインから独自ドメインへから下は不要です。

補足

.」と「\」の位置に注意してください。

設定を保存をクリックしたら、トップページと記事を確認。

mixhostの.htaccess設定③【管理画面へのアクセス制限】

ここは少し難易度が上がります。

WordPressの初期状態は、ログイン画面へのURLが以下のように決まっています。

https://ドメイン/wp-login.php

つまり相手のドメイン名が分かれば、ログイン画面まではいけてしまうわけです。

WordPress管理者ログイン画面

WordPress管理者ログイン画面

本来ログイン画面は自分以外に見せるものではありません。

もちろん「ユーザー名」と「パスワード」が分からなければ、ログインされることはありませんが、どうせなら「ログイン画面」のアクセスも防止しておきましょう。

以下のコードを先ほどの「RewriteRule ^(.*)index.html$ https://kagesai.net/$1 [R=301,L]」の下に追記してください。

.htaccess
copyする
<IfModule mod_rewrite.c> RewriteCond %{HTTP} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule> Options +FollowSymLinks RewriteEngine on <!-- wwwなしに統一 --> RewriteCond %{HTTP_HOST} ^www\.kagesai\.net$ RewriteRule ^(.*)$ https://kagesai.net/$1 [R=301,L] <!-- index.html(php)なしで統一 --> RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ https://kagesai.net/$1 [R=301,L] <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>

abcd12346箇所を指定することでログイン画面のURLを変更できます。

パスワードと同じく、なるべく複雑なものにしましょう。(メモを忘れずに)

続いてkagesai.net5箇所を自分のドメイン名に変更してください。

これでログイン画面のURLがオリジナルのものに変わりました。

この例だと「https://kagesai.net/wp-login.php?abcd1234」になります

補足

phpの後に「?」を挟むので注意

設定を保存をクリックしたら、トップページと記事を確認、問題なければ次の作業に移ってください。

管理画面のログインURLを確認

シークレットモードで、過去のログインURLで検索をかけてみましょう。

シークレットモードのショートコード
  • Macユーザー⌘command + shift + n
  • WindowsユーザーCtrl + Shift + n

https://自分のドメイン/wp-login.php」で検索をかけて、404エラーページが表示されればOKです。

MACシークレットウィンドウで検索

最後にそのままシークレットモードで「新しいURLで検索」かけます。

MACシークレットウィンドウで検索

WordPress管理者ログイン画面

WordPress管理者ログイン画面

ログイン画面が表示されれば設定完了です。

ここまで設定したら、あとは記事を書いていきましょう。

当講座の流れでここまで来た方は「「WordPressインストール後に必要な8つの初期設定を解説」の表示設定でチェックをつけた「検索エンジンでの表示」のチェックを外してください。

WordPress検索エンジン表示設定

次回予告

次回は「子テーマの使い方」について、解説します。

子テーマを使えるようになると、カスタマイズ性がグーンとアップするので、ぜひ使いこなしましょう。

WordPress子テーマCyberduckの使い方WordPressの子テーマを分かりやすく解説
カゲサイーカゲオ

第5回目のWordPress講座はいかがでしたか?

今までの中では一番難しかったかもしれませんね。

慣れるまでは下手にいじらない方が良いファイルなので、最初だけ設定したらあとはほったらかしでOKです。

4 COMMENTS

アバター むむむ

詳しい方法が書いてあるサイトがなかったので、とても助かりました!

いちおう自分はわかったのですが、たぶんHTML全く知らない人は勘違いする人いると思いますよ。

【緑字部分はご自身の初期サブドメインに変更】の部分ですが、

kagesai.初期サブドメイン.mixh.jp

kagesai.kagesai.mixh.jp.mixh.j

たぶん↑こんな感じで入力しちゃう人多いと思います。あとkagesaiが赤字になっていないところもありますよー。

コメントを投稿する
カゲオ カゲオ

むむむ様

返信が遅くなりましたが、コメントありがとうございます。

初期サブドメインの件、注意書きを追加いたしました。

また赤字になっていない件、大変失礼いたしました。(現在・修正済みです)

今後ともカゲサイをよろしくお願いします。

カゲサイ

コメントを投稿する
アバター shokopanda

質問です。
管理画面へのアクセス制限の設定を試みたのですが、間違ったのか管理画面にログインできなくなりました。
元に戻す方法ありますでしょうか?

コメントを投稿する

コメントはお気軽にどうぞ

コスパ最高の電動スタンディングデスクを本気でレビューしてみたぜ!!
記事を読んでみる