web-dev-qa-db-ja.com

ホームページでbase64でエンコードされたアイコンを使用する場合の内部サーバーエラー

ホスティングスペースのルートに「index.html」(または.php-違いはありません)ファイルがあります。その「index.html」ファイルには、次のコード行が含まれています。

<link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFGNTRDMzg0OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFGNTRDMzg1OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUY1NEMzODI4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MUY1NEMzODM4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5w10C9AAAARElEQVR42mJgIBEwAvH///+hHEZG0jSgSODQzEK8UghgosgPJDuJIk/jMoVkP7AQaTCVbCDG09SLB1x2kuwkkgFAgAEA2noPMd6y8cUAAAAASUVORK5CYII="/>

ドメイン名にアクセスしようとすると、カスタマイズされた内部サーバーエラーメッセージ「内部サーバーエラーです。.に連絡してください」が表示されます。そのコード行を削除すると、機能します。

ただし、「test」というフォルダーを作成し、その中に「index.html」ファイルを配置して、「mydomain.com/test」としてファイルにアクセスすると、すべて正常に機能します。

何か案は? (私はjsの置換を試みますが、これは一般的なポイントに行きます、なぜエラーがポップアップするのですか?)

3
anoix

これは、ホスティングプロバイダーに固有の問題のようです。おそらく、彼らはあなたのサイトのホームページでマルウェアを探すためにチェックインしているということです。 Base64でエンコードされたJavaScriptは、ハッキングによって挿入されたJavaScriptを難読化するためによく使用されます。マルウェアスキャナーは、Base64でエンコードされたデータを検出するとトリガーします。

この問題を解決するには、Webホストに連絡する必要があります。サイトのこのチェックを無効にできる場合があります。

1

ドメイン名が.comで終わる公開されたWebサイトのルートフォルダー内のファイル名index.htmlで次のソースコードを使用します。

<html><head>
  <link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFGNTRDMzg0OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFGNTRDMzg1OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUY1NEMzODI4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MUY1NEMzODM4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5w10C9AAAARElEQVR42mJgIBEwAvH///+hHEZG0jSgSODQzEK8UghgosgPJDuJIk/jMoVkP7AQaTCVbCDG09SLB1x2kuwkkgFAgAEA2noPMd6y8cUAAAAASUVORK5CYII="/>
</head><body>
  <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjFGNTRDMzg0OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjFGNTRDMzg1OEY1MzExRTQ4RkZGOTFCQzU3QkEzQTFBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MUY1NEMzODI4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MUY1NEMzODM4RjUzMTFFNDhGRkY5MUJDNTdCQTNBMUEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5w10C9AAAARElEQVR42mJgIBEwAvH///+hHEZG0jSgSODQzEK8UghgosgPJDuJIk/jMoVkP7AQaTCVbCDG09SLB1x2kuwkkgFAgAEA2noPMd6y8cUAAAAASUVORK5CYII="/>
</body></html>

Firefox(v38.0.1)の結果のスクリーンショットは、ブラウザのタブのファビコンとして、またWebページの本文セクション内の静的画像として、base64でエンコードされたインラインデータから機能するアイコンを示しています。

Screenshot of icon working from base64 encoded inline data

前のコメントで述べたように、私はこのファイルを3つの異なるホスティング環境/プロバイダーで試し、一貫した結果を得ましたが、ApacheによってInternal Server Errorが生成される場所で説明した問題を再現できませんでした。

テスト済み/動作確認済みの構成:

  • 2.6.18-164.el5、Apache v2.2.3、PHP v5.3.4-dev
  • 3.2.61-grsec-modsign、Apache v2.2.29、PHP v5.4.37
  • 2.6.18-471.3.1.el5.lve0.8.72、Apache v2.4.12、PHP v5.4.40
0
richhallstoke