Skip to content

Instantly share code, notes, and snippets.

@pine
Last active November 2, 2017 07:56
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pine/f7ca7721c2ca38247717 to your computer and use it in GitHub Desktop.
Save pine/f7ca7721c2ca38247717 to your computer and use it in GitHub Desktop.
Google Chrome から利用できない頭の悪い KUT Portal の話

Google Chrome から利用できない頭の悪い KUT Portal の話

この記事は 高知工科大 Advent Calendar 2015 の 12/2 の記事です

皆さんこんにちは。2014 年度の高知工科大学卒業生である @pine613 です。

今日は、Google Chrome から利用できない、理系大学としてはありえない ポータルサイトが存在する大学についての話です。

TL;DR

  • Google Chrome はブラウザシェア 1 位である
  • それにもかかわらず、某大学のポータルサイトではサポートされない
  • しかも UserAgent を書き換えれば突破できるザル実装である
  • このウェブサイトを構築した企業は恥ずべきで、正直エンジニアとしてありえないと思う
  • 今すぐインストール: 高知工科大学ポータルサイト - KUT Portal on Chrome

Google Chrome はブラウザシェア 1 位である

みなさん Google Chrome はご存知ですよね。
Google が開発しているブラウザで、デスクトップ版のブラウザシェアが 1 位なブラウザです。

スマートフォン版のブラウザシェアではそうではないですが、デスクトップから利用することを前提としている 某大学のポータルサイトは当然 Google Chrome から利用できるはずです。

動作保証していないブラウザでアクセスされています

あなたは、以下のメッセージを見たことがありますか?

某大学のポータルサイトは、Google Chrome はサポート対象外のブラウザだとバッサリ切り捨てているのです。 この大学に情報系の学科があるとは、にわかには信じがたい…。

UserAgent でブラウザが判定できる(?)

ウェブページを表示する時に用いられている HTTP というプロトコルには UserAgent というヘッダがあり、以下のようにアクセスせすしてきた環境を示す文字列が含まれています。

User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36

上記は、Mac OS X 版の Google Chrome からアクセスした場合に利用される UserAgent です。
一見すると、これを使うとブラウザが判定できるように思えます。

しかし、ちょっと待って下さい。
情報系の学生ならピンとくると思いますが、この文字列は簡単に書き換えれてしまうんですね。しかも、ブラウザの標準機能 だけで。

そして、最近 Windows 10 と共に登場した Microsoft の新しいブラウザ Edge は、自身を Google Chrome であると名乗ります。

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.<OS build number>

このように UserAgent は全く信用できない情報であり、Microsoft は ウェブサーバーを騙すため に UserAgent を使っていることがわかります。

そして、現代においてブラウザとそのバージョン (= UserAgent) は星の数ほど存在します。 (たとえば、Google Chrome はバージョン 46 であるし、Firefox はバージョン 42 です)

すべてのブラウザ、すべてのバージョンに対して動くことを検証するのは現実的ではありませんので、UserAgent を用いた判定には限界があります。

現代において、某大学ポータルサイトのように UserAgent でウェブページの挙動を変えるべきではありません。

こんなウェブサイトを作らないエンジニアに

いくら開発要件を満たしていたと言っても 、あまりにも センスが無い と思います。

業務上そのようにするように指示されているのだと思いますが、これは 「 ちくしょう、転職だ! 」 と叫ばざるをえないです。

それでも Google Chrome でポータルサイトを使いたい

禁止されていても Google Chrome でポータルサイトを使いたい方は、以下の拡張機能をインストールすると使えるようになります。

やっていることは、容易に書き換えが可能である UserAgent を上書きしてるだけです。
インストールするだけで、設定不要で利用できるようになります。
(インストール後、一度 Google Chrome を再起動してから利用してください。)

結論

  • Google Chrome はブラウザシェア 1 位である
  • それにもかかわらず、某大学のポータルサイトではサポートされない
  • しかも UserAgent を書き換えれば突破できるザル実装である
  • 今すぐインストール: 高知工科大学ポータルサイト - KUT Portal on Chrome

残りの大学生活を楽しく過ごしてください!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment