IIS web.config でクロスドメイン アクセスを設定する方法

IIS web.config でクロスドメイン アクセスを設定する方法

要件: ページに画像を表示する必要がありますが、さまざまな理由により、画像はサーバー 2 にありますが、表示するプログラムはサーバー 1 にあります。これにより、表示時にクロスドメインの問題が発生しています。当初のアイデアは、バックグラウンドで画像パスを取得するプログラムを直接記述し、画像をダウンロードしてから、画像アドレスをサーバー 1 に返すことでした。ただし、このサイクルの不確実性とこの段階でのプロジェクトの緊急性のため、断念されました。 2 番目の方法に切り替えて、js 経由で画像をサーバーにダウンロードします。 。いろいろ情報を探したり、他の人とやり取りしたりしたのですが、実現できないことがわかりました。そこで、js+ca​​nvas を使ってローカルに保存しようと思ったのですが、どうやらローカルにしか保存できないらしいことがわかりました。すると、問題は出発点に戻りました。ウェブサイトにすでに写真がある場合、それを直接導入することは可能でしょうか? 情報を調べて慎重に分析し、テストとデバッグを行った後、写真の導入を正確に実装するという問題は解決しました。

プロセス: 画像のインポートのためのクロスドメインソリューション

結果: クロスドメイン問題を解決するためにWebconfig設定を変更する

<?xml バージョン="1.0" エンコーディング="utf-8"?>
 
<!--
  ASP.NET アプリケーションの構成方法の詳細については、http://go.microsoft.com/fwlink/?LinkId=169433 を参照してください。
  -->
 
<構成>
    <システム.web>
        <コンパイルデバッグ="true" targetFramework="4.0" />
  <customErrors mode="Off"/> ここでは、外部ネットワークのエラーログも確認できます <webServices>  
       	  <プロトコル>  
          	<名前を追加="HttpGet"/>  
          	<名前を追加="HttpPost"/>  
        	</プロトコル>  
      	</ウェブサービス>
 
    </システム.web>
  <システム.Webサーバー>  
    <httpプロトコル>   
    <カスタムヘッダー>   
      <add name="Access-Control-Allow-Methods" value="OPTIONS,POST,GET"/>   
      <add name="Access-Control-Allow-Headers" value="x-requested-with,content-type"/>   
      <add name="Access-Control-Allow-Origin" value="*, http://192.168.0.178:8068" />   
    </カスタムヘッダー>   
  </httpプロトコル>   
  
  </system.webServer>

主な問題は、上記のように設定されたクロスドメインアクセス許可の制限です。

このようにして、サーバー 1 で画像を表示するときにクロスドメインの問題を解決できます。

IIS web.config でクロスドメインを設定する方法

ウェブサイトの開発では、クロスドメインが必要になる場合がありますが、IIS はどのようにしてクロスドメインを設定するのでしょうか? web.config ファイルで直接設定することができます。設定方法は次のとおりです。

<システム.Webサーバー>
  <httpプロトコル>
    <カスタムヘッダー>
      <add name="Access-Control-Allow-Methods" value="OPTIONS,POST,GET"/>
      <add name="Access-Control-Allow-Headers" value="x-requested-with"/>
      <add name="Access-Control-Allow-Origin" value="*" />
    </カスタムヘッダー>
  </httpプロトコル>
</system.webServer>

上記の web.config を設定することで、クロスドメイン Web サイトを実現できます。

クロスドメインIIS Webconfig IIS設定方法の共有です

アクセス制御許可オリジンを設定する

IIS を開き、「HTTP 応答ヘッダー」を見つけてクリックします。

右側に「追加」があるので、次のヘッダーを追加します。

アクセス制御許可ヘッダー: コンテンツタイプ、api_key、認証

アクセス制御許可元: *

次のように

<システム.Webサーバー>
<httpプロトコル>
<カスタムヘッダー>
<add name="Access-Control-Allow-Methods" value="OPTIONS,POST,GET"/>
<add name="Access-Control-Allow-Headers" value="x-requested-with,Content-Type"/>
<add name="Access-Control-Allow-Origin" value="*" />
</カスタムヘッダー>
</httpプロトコル>
</system.webServer>

IIS web.config でクロスドメイン アクセスを設定する方法については、これで終わりです。IIS クロスドメイン アクセスの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  Web デザインにおける HTML フォーマットと長いファイルに関するヒント

>>:  MySQL MVCCメカニズム原理の詳細な説明

推薦する

MySQL の int(n) の後の n はどういう意味ですか?

int(1) の長さ 1 は、許可されたストレージ幅を表していないことはすでにご存知かもしれません...

JavaScriptはPromiseを使用して複数の繰り返しリクエストを処理します

1. なぜこの記事を書くのですか?重複リクエストの処理に関する記事をたくさん読んだことがあるでしょう...

Linux ハードウェア構成コマンドの例

ハードウェア ビュー コマンドシステム # uname -a # カーネル/オペレーティング システ...

MySQL はカスタムシーケンスを使用して row_number 関数を実装します (詳細な手順)

いくつかの記事を読んだ後、ようやく MySQL で row_number() ソートを実装する方法が...

Tomcat をサービスとして登録する際に注意すべき点のまとめ

Tomcat をサービスとして登録する場合の注意点は次のとおりです。 インターフェースを開いたら、以...

IE8はマルチ互換モードを使用してWebページを正常に表示します

IE8には複数の互換モードがあります。 IE プラットフォームの設計者である Chris Wilso...

MySQL クエリにおける LIMIT の大きなオフセットによって引き起こされるパフォーマンス低下の分析

序文MySQLクエリはselectコマンドを使用し、limitとoffsetパラメータを使用して、指...

mysql IS NULL インデックスケースの説明を使用する

導入MySQL の SQL クエリ ステートメントで is null、is not null、!= ...

Docker可視化ツールPortainerの導入と中国語翻訳

#docker 検索#docker プルポーター1. イメージを取得した後、中国語パッケージをダウン...

Windows10のマウスを模倣して境界線を光らせる効果を実現するCSSの詳細解説

最新の Windows 10 アップデートをインストールした後、システム UI の詳細な効果が顕著に...

Centos7 の起動プロセスと Systemd での Nginx の起動構成

Centos7 の起動プロセス: 1.post(電源投入時のセルフテスト) 電源投入時のセルフテスト...

フレックスレイアウトは左のテキストオーバーフローを実現し、右のテキストの適応を省略します

テキストの長さに応じて、左側のテキストの幅を自動調整できる状況を実現したい。1行が表示できない場合、...

MySql 認証に基づく vsftpd 仮想ユーザー

目次1. MySQLのインストール1.2 テーブル、データベース、ユーザーを作成する1.3 リモート...

Nginx を使用してグレースケール リリースを実装する

グレースケールリリースとは、白と黒をスムーズに移行できるリリース方法を指します。 ABテストとは、グ...

IDEA の Docker プラグインを介して Springboot プロジェクトを公開する方法の詳細なチュートリアル

1. Dockerfileを書く(1)プロジェクト名を右クリックして新しいテキストファイルを作成し、...