Visual Studio Codeで簡易的なローカルサーバーを起動して、コード保存時に自動でブラウザをリロードする拡張機能「Live Server」

ちょっとしたコードを書くときに、わざわざ別のツールを使うこと無くローカルサーバーを起動し、さらにライブリロード機能(コード保存時に自動的にブラウザリロードをする機能)にも対応しているVisual Studio Codeの拡張機能が「Live Server」です。
今回はこのLive Serverに関してまとめておきます。
Live Server

Live Serevrの特徴は下記の通りです。
- ローカルサーバーを簡単に起動できる
- ライブリロード機能に対応
HTMLを書く場合であれば、人によっては直接HTMLファイルをブラウザに読み込んで確認しているかもしれませんが、それだと実際にサーバーにアップしたときと動きが異なる可能性があります。
ローカルサーバーを使う意味
その例の1つが「ルート相対パス」です。
下記のようなパスを指定してCSSファイルを読み込みたい場合、サーバー上であれば「example.com/assets/css/style.css」を読み込みにいきますが、直接HTMLファイルをブラウザに読み込んでいる場合は、PCの最も上位にある「assets」フォルダ内を見に行ってしまい、正しく読み込まれません。
<link rel="stylesheet" href="/assets/css/style.css">ローカルサーバーを起動すると、指定したフォルダをルートとしてファイルを読み込むので、正しく読み込まれます。
HTMLファイルをブラウザに読み込んでいる場合は、下記のように最初に.(ピリオド)を付けて、通常の相対パスにすることで正しく読み込まれるようになります。
<link rel="stylesheet" href="./assets/css/style.css">このように、ルート相対パスはローカルサーバー上でないと正しく読み込まれません。
可能な限り最終的にアップするサーバーと同じ環境にすることで、予想外のトラブルを早く発見できます。
ライブリロード機能
通常、コードを変更して保存したあとはブラウザに移動してリロードする必要があります。
しかし、ライブリロード機能(ホットリロード機能と呼ぶ場合もあります)を使うと、コード保存時に自動でブラウザをリロードしてコードを反映してくれます。
デュアルディスプレイで作業している人にとってかなり便利な機能で、片方の画面にVisual Studio Code、もう片方の画面にGoogle Chromeなどのブラウザを配置しておいて、コードを書いて保存すれば、すぐ横の画面でリロードされて確認できます。
非常に細かいことですが、積み重ねで時間の節約になりますし、小さなストレスがなくなります。
基本的な使い方
Live Serverをインストールすると、Visual Studio Codeの画面右下に「Go Live」というメニューが追加されます。

フォルダをVisual Studio Codeで開いた状態であれば、このメニューをクリックするとブラウザが起動して、ローカルサーバーで表示されます。
ローカルサーバーが起動すると「Port : ○○○○」という表示に切り替わって、もう1度メニューをクリックして終了できます。

エクスプローラーからページを開く
サイドバーの[エクスプローラー]で、ファイルを右クリックすると「Open with Live Server」という項目が表示されます。
これを選択すると、選択したファイルをローカルサーバー上で開いてくれます。
![[エクスプローラー]→[Open with Live Server]](https://webrandum.net/mskz/wp-content/uploads/2022/07/image_4.png)
もしくは、ファイルを開いた状態でcommand + Lを押したあとにcommand + Oを押しても、開いているファイルがローカルサーバーで開かれます。
設定の変更
Visual Studio Codeの設定を変更したり、settings.jsonファイルにコードを追加することで、さらに便利にカスタマイズできます。
デフォルトブラウザの変更
「liveServer.settings.CustomBrowser」でデフォルトブラウザの変更ができます。
{
"liveServer.settings.CustomBrowser": "chrome"
}設定できる値は下記の通りです。
| ブラウザ | 設定 |
|---|---|
| Google Chrome | chrome |
| Google Chrome (シークレットモード) | chrome.PrivateMode |
| Firefox | firefox |
| Firefox (プライベートモード) | firefox.PrivateMode |
| Edge | microsoft-edge |
| Blisk | blisk |
ローカルサーバー起動時にブラウザを起動しない
「Go Live」をクリックした時に、ブラウザを起動させたくない場合は「liveServer.settings.NoBrowser」を「true」にします。
{
"liveServer.settings.NoBrowser": true,
}特定ディレクトリをルートに指定する
現在開いているワークスペースのフォルダをルートにするのではなく、指定した特定のフォルダをルートに指定したい場合は「liveServer.settings.root」を使います。
例えばプロジェクトフォルダの中に「dist」フォルダを作って、そこにコンパイルされたファイルを格納している場合に使えます。
{
"liveServer.settings.root": "/dist"
}スマホから表示確認でいるアドレス形式に変更する
Live Serverで起動したローカルサーバーは、同じWi-Fi環境下であればスマホからでも確認できます。
「liveServer.settings.useLocalIp」を「true」にすると、表示されるURLが「192.168.0.185:5500」のようなIPアドレス形式に変わります。
{
"liveServer.settings.useLocalIp": true,
}このIPアドレスを、同じWi-Fi環境下のスマホのブラウザで開くと表示されます。
MacとiPhoneを使っている人であれば、スマートコピーを使うと簡単にiPhoneにIPアドレスをコピーできます。


Google Maps APIでピンをクリックしたときに吹き出しを表示する方法
Visual Studio Codeでできる最低限のGit操作方法
gulpでPostCSSを使う方法
iOS Safariで指定したフォントサイズにならない場合の対処法
MacVim-Kaoriyaのインストール方法
WordPressのヘッダーにツールバーが表示されないときは、wp_headやwp_footerが入っているか確認
Nuxt.jsでのページ遷移設定方法(Vue Routerやnuxt-link)|Nuxt.jsの基本
MacでCLIツールをインストールするときに行うターミナルでの「パスを通す」とは一体なにか?
ターミナルでGitを使う時に最低限覚えておきたいコマンド
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法