localhost上のimgixをNgrokで使用する 手順

時々、imgixを使用してテストや実験を行いたいが、画像がパブリックなクラウドストレージプロバイダーにアップロードされていない場合があります。

例えば、自宅のサーバー、ラズベリーパイ、またはローカルマシンにある画像を使用したいとします。

これらの画像をimgixを通して配信する一つの方法は、ngrokを使用することです。

Ngrokを使用すると、ローカルで実行されているアプリケーションをパブリックインターネット上のURLにプロキシ転送することができ、このURLをWebフォルダーソースのベースとして設定できます。

手順:

ngrokのインストール

ngrokのインストールガイドに従って、マシンにngrokをインストールします。

ローカルアプリの準備

デモのために、以下の構成を持つexpressを使用した簡単な例を見てみましょう:

    • app.js
      • imgix-logo.png
app.js
const express = require("express")
 
const app = express()
const port = 3000
 
app.use(express.static("public"))
 
app.get("/", (req, res) => {
  res.send("<h1>Welcome to our local App</h1>")
})
 
// サーバーの起動
app.listen(port, () => {
  console.log(`Server is running on http://localhost:${port}`)
})

ローカルホスト:3000でアプリを起動

#cd ngrok_demo_app
node app.js

ngrokを使用してローカルサーバーをプロキシし、パブリックURLを取得

ngrok http 3000

これにより、imgixのソースとして使用できるパブリックURLが出力されます。

imgix Webフォルダーソースの設定

imgixダッシュボードに移動し、新しいWebフォルダーソースを作成します。 Origin URLとしてngrok URLを使用します。

WebフォルダーベースURLのステップ

最後に、ソースをデプロイします。

imgixを使用して画像を配信

ローカルマシン上の画像パスにimgixドメインを組み合わせて画像にアクセスします。 https://example.imgix.net/imgix-logo.png?auto=format,compress&w=300