2023年03月29日 更新
どうも、クラゲジュニアです。
サーバー無しでフロントエンド単体で動くWebページを開発しようとすると、ローカル上にある画像などがCORSエラーなどで読み込めなくなる事象があります。
今回は、一時的にセキュリティを緩めてCORSエラーを回避できるようにします。
今回の手順は開発のために止む無くセキュリティを緩める方法です。ウィルス感染などのリスクを避けるべく、作業完了後には必ず通常のChromeに切り替えて元に戻してください。
下記の環境で実施しました。なお、Chromeに関しては公式のインストーラーに従ってインストールした内容を想定します。
- Windows 10 pro 22H2
- Google Chrome 111.0.5563.66(Official Build)
Chromeのショートカットを用意します。通常インストール時であれば下記のパスにショートカットがあるため、コピーしてデスクトップに貼り付けます。
C:\ProgramData\Microsoft\Windows\Start Menu\Programs
ショートカットを右クリックし、プロパティ(R)
を開きます。
プロパティのリンク先(T)
を下記に変更します。インストール先を別に変更している場合は現在のパスの末尾に半角スペースを一つ入れて--allow-file-access-from-files
を追記します。
変更完了後にOK
をクリックして設定を終了します。
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files
バックグランドを含めて現在動いているChromeをすべて閉じ、先程作成したショートカットで起動します。
ChromeのURL欄に下記を入力すると、--allow-file-access-from-files
オプションが適用されていることが確認できます。
chrome://version
これで、CORSを回避してローカル上の画像が読み込めるようになりました!再度のお願いになりますが、作業が終わったらバックグランドを含めてChromeをすべて閉じ、通常のChromeを立ち上げるようにしてください。
再度立ち上げた際には、念のためchrome://version
にて--allow-file-access-from-files
オプションが消えていることを確認してください。
以上です。