LoginSignup
3
0

More than 3 years have passed since last update.

【WordPress】Linux と無縁の人でも hosts を知っておくと便利だよ

Last updated at Posted at 2019-06-14

フリーとして頑張り始めた友達のデザイナさんから、WordPress の環境構築方法について、色々と相談を受けました。

その中で、一番「もっと早く知っておけば良かった!」と言われたのが、hosts の話です。

Windows や Macintosh でも使えるという事を知らないまま、面倒な作業をしている方もいらっしゃるかもしれませんので、「概念的なこと」や「どういった事ができるのか?」といったところを、簡単に紹介したいと思います。


対象としている人

  1. 自分のパソコン上(local) に、WordPress 環境は作れるが、本番環境へのデータ移行で手間取る。

  2. ドメインはそのまま、サーバーだけを移転する際、移転前にテストをしたい。

  3. ドメイン取得をできるだけ後回しにしたい。

このような方には、是非活用して欲しいなと思います。


hosts?

hosts(ホスツ)とは、TCP/IPを利用するコンピュータにおけるホスト名のデータベースで、IPアドレスとホスト名の対応を記述したテキストファイルである。

あ、もう私には無理…と思った人は、ちょっとお待ちを。

使い方はめちゃくちゃ簡単で、hosts というファイルを開いて、簡単なルールを書くだけです。


hosts の使い方

【1】hosts ファイルを開く

ググった結果で申し訳ありませんが、全てを説明するのは大変なので、↑を参考にして下さい。


【2】ルールを書き足す

# で始まる行は、「コメント」になります。

特に慣れない内は、内容を「上書き」するのではなく、↓の例のように「コメントアウト」した上で、メモも残しておくと良いです。

hosts
#-- 1.コメントアウトしてから…
# 127.0.0.1    localhost

#-- 2. 設定を書き加える
127.0.0.1    example.com

そうすれば、もしトラブルになってもすぐ元に戻せます。


【3】ウェブブラウザへルールを適応

ウェブブラウザを一度終了させて起動し直しても良いのですが、少し面倒です。

Chrome(Chromium) では、以下のようにすれば、すぐに設定をブラウザへ反映できます。

  1. chrome://net-internals/#dns を開く ⇒ Clear host cache を押す
  2. chrome://net-internals/#sockets を開く ⇒ Flush socket pools を押す

使い方は、これだけです。


何を設定したの?

Google の URL は、「http://216.58.197.206/」です!と言われても、見ただけでは何のサイトか分かりませんし、なかなか覚えられません。

でも、「http://google.com/」なら、分かりやすいですよね。

google.com と打てば Google が見れるのは、216.58.197.206 ⇔ google.com というルールを、DNS と呼ばれるものが管理してくれているお陰です。

そのルールとは別に、「独自のマイルールを上書きした」のだと思ってください。

【2】のマイルールを設定したパソコンでは、http://example.com/ と打てば http://127.0.0.1/ にアクセスできるようになるわけです。


何ができるの?

本番環境で使うドメインを、example.com だとすると…

  1. 自分のパソコン上の WordPress で、初めから example.com を設定して作業すれば、本番環境へデータを移しても、ほとんどそのまま使える。

  2. example.com というドメインは同じまま、サーバーだけを移転する際に、設定を変更する前でもテストができる。

  3. example.com というドメインをまだ取得していなくても、example.com が実在するドメインであるかのように、扱うことができる。

…という事になります。


設定例

例えば以下のようにすれば、複数のドメインを自分のパソコン上で使い分ける事もできます。

  • hosts の設定
hosts
127.0.0.1    project01.jp
127.0.0.1    project02.jp
  • Apache の VirtualHost の設定
httpd-vhosts.conf
<VirtualHost *:80>
    ServerName project01.jp
    DocumentRoot "/path/to/wordpress/project01.jp"
</VirtualHost>

<VirtualHost *:80>
    ServerName project02.jp
    DocumentRoot "/path/to/wordpress/project02.jp"
</VirtualHost>

設定例については、かなり説明不足で申し訳ありません。(力尽きた…)

のように、ご自分の環境に合わせて hosts というキーワードを使ってググれば、より詳しく説明してくれているサイトも見つかるのではないかと思います。


【余談】他に話題になった事

今回の相談の中では、以下のような事も話題となりました。

  1. データ移行の際、プラグインや phpMyAdmin を使うのは、極力避けた方が良い

    • バックアップやデータ移行系のプラグインには、脆弱性が発見される事もあり、データ漏洩時の被害も大きい
    • Google Hacking の例:inurl:"/wp-content/uploads/db-backup" intitle:Index of
    • phpMyAdmin は、常に狙われていると思っておいた方が良い
    • mysqldump などのコマンドに慣れれば慣れる程、作業効率は上がる
  2. せっかく Mac 環境なら、rsync を覚えると良い

    • コマンド 1 つで、同期やバックアップなど応用範囲が広い
    • ただし、まずはとにかく dry-run する癖をつけておかないと、慣れた頃に絶対やらかす
  3. WP-CLI は神

  4. MAMP は卒業して、VCCW + Wordmove へのステップを

普段 Linux 環境に触れない方には、かなりとっつきにくいかもしれません。

しかし、ホンの少しコマンドを覚えるだけで、劇的に作業効率が上がることもありますので、興味がある単語があれば、まずはググってみて欲しいなと思います。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0