⚠️ 記事内に広告を含みます。

curlでIPやドメイン・ホスト名を指定する方法

Hostsに書かずにcurlでテストする方法

IPアドレスを指定してcurlでテストする方法

テストのwebサーバでexample.comとドメインを設定してもDNS設定していなければブラウザやcurlコマンドでexample.comにアクセスしても閲覧できません。

実際のexample.comのIPも自分のサーバとは別のものが設定されていると思います。

shell

# dig example.com +short
93.184.216.34




IPアドレスを指定する方法

所有していないドメインやDNS未設定のドメインをテストするには

などの方法があります。

Hostsに記載する方法

Hostsファイルドメイン名とIPアドレスの紐づけ対応表名前解決に利用されるファイルです。

Hostsにexample.comと自分のIPを記述すれば、ブラウザでexample.comと入力すると自分のサーバIPに接続するようになります。

テストが終わった後は、Hostsから削除しておきましょう。後々に不具合の原因になる可能性があるからです。

もっと簡易的な方法としてcurlコマンドでHostとIpを指定する方法があります。

Hostsの欠点

  • 編集に管理者権限が必要
  • 都度書き換えが必要
  • 消し忘れるとIPが変更されたときに変更前のアドレスを見に行ってしまう

 curl  -H “Host:ドメイン名” IPアドレスでIPを指定する方法

curl コマンドではIPやドメインを指定することも可能です。

bash

# curl -IL google.com
# curl -IL 172.217.175.23

example.comは自分のIP xxx.xxx.xxx.xxxとしてアクセスするというようにcurl ではHostを指定することができます。

bash

# curl -IL -H "Host:example.com" 127.0.0.1
# curl -IL 172.217.175.23

webサーバのバーチャルホストなど一つのサーバ(IP)に複数のドメインを設定する場合はドメインごとにアクションが変わるのでこのようにテストしたい場面があると思います。

–resolveオプションを使ってアクセスもできます。httpsで確認する場合はこちらを使います。

bash

# curl --resolve example.com:443:172.217.175.23 -I https://example.com

hostsに書かなくてもテストできるので便利です。curlコマンドは他にもいろいろなオプションや使い方があるのでマスターしておきたいところです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です