ゲーム「翠星のガルガンティア」のソースの入手とIISへの配置方法

Visual Studio 2013 Professional 以上で、Android、iOS アプリの開発を可能にするアドイン、Multi-Device Hybrid Apps のインストール方法を投稿する予定でしたが、本日 (2014/6/18)、PRODUCTION I.G 様とのコラボゲーム、「翠星のガルガンティア〜キミと届けるメッセージ〜」が公開されましたため、今回は予定を変更し、公開されているゲームのソースを Windows の既定の Web サーバーである IIS (インターネット インフォメーション サービス) への配置方法について紹介します。   翠星のガルガンティア〜キミと届けるメッセージ〜 http://fly.gargantia.jp/   このゲームのアドベンチャーモードは、WebGL を使用して作られており、デスクトップ アプリケーションと遜色のないクォリティの高いゲームが楽しめます。 (※)WebGL をサポートしている Web ブラウザーであれば、ゲームをプレイすることができますが、Core i 5 以上の CPU で使用することをお勧めします。なお、このゲームは Surface Pro 2 に最適化されているので、Surface Pro 2 であればより楽しめます。 さらに、このゲームのアドベンチャーパート部分はソースコードが公開されており、ダウンロードし、改変して個人的に楽しむことができます。   ソースコードの入手 以下の GitHub のサイトにアクセスします。 turbulenz/gargantia_editor https://github.com/turbulenz/gargantia_editor ページ右下の [Download ZIP]…

0

[IIS]画像のフォーマットとサイズを変換して返すサービス

久しぶりに IIS についての記事を書きます。 先日、上司と話しをしていたら、Windows ストア アプリを作ってくださっているパートナーさんが、「IIS には画像のフォーマットやサイズを変換してくれるサービスがないのでわざわざ別のサーバーを立てている」との話を聞きました。 .NET の Bitmap クラスを使用したことがある人であればご存知の通り、画像のフォーマットの変換もサイズの変更も Bitmap クラスを使用すれは簡単に実現することができます。 IIS は .NET Framework で動作する ASP.NET のアプリケーションサーバーの機能を持っているので、その機能を組み込むことなどはわけはありません。 それこそ、鼻をほじりながらでも可能です。 ということで、今回は、私が実際に鼻をほじりながら(少しだけですが)作った、画像を変換するサービスのサンプルを紹介します。   IIS 7.x で画像のフォーマットとサイズを変換して返すサービスを作成する 今回の画像変換サービスを作成するにあたり、仕様は以下としました。 仕様 渡された URL の画像を取得し、加工した画像をレスポンスする パラメーターは元となる画像の 「URL」 と、変換する「画像フォーマット」、変換後の「幅」と「高さ」 幅、高さいずれかのパラメーターがない場合は画像のフォーマット変換のみ行う フォーマットが指定されていない場合は処理を行わない エラーの際にはなにもレスポンスを返さない (画像は抜けた状態となる) 開発は Visual Studio 2010、もしくは 2012 で行います。 プロジェクトは、シンプルにしたいので [Web サイト] で行い、ページを返す必要はないのでジェネリックハンドラを使用します。 具体的な手順は以下の通りです。 手順 Visual Studio を起動   メニュー…

0

なぜ、 IIS は PHP アプリケーションの実行に不向きとされてきたのか?

震災の影響と、業務が立て込んでいたために久々のブログの投稿となります。 あらためて、今回の震災で被災された皆様には、心よりお見舞い申し上げます。 私の実家も福島にありますが、会津地方ということで大きな被害はありませんでしたが、友人や同僚の実家などでは被害にあったところもあり、なかなか精神的にこたえるものがありました。 原発の問題など、まだまだ厳しい状況が続きますが、復興と再生を信じて頑張っていきましょう!   ということで (←なにが?) 、今回は、長い間囁かれてきたものの、その詳細についてはあまり語られることのなかった IIS と PHP にまつわる噂、「IIS で PHP を動作させるとパフォーマンスが悪い、安定しない」という件について、事実なのか否か、そしてそれはいかなる理由によるものなのか、掘り下げて書いてみたいと思います。   なぜ、 IIS は PHP アプリケーションの実行に不向きとされてきたのか? IIS はリリース当時から PHP を CGI  ( Common Gateway Interface ) として ホストすることができました。 PHP 4 からは PHP ランタイムがマルチスレッド対応となり、IIS 用として ISAPI  (Internet Server Application Programming Interface) モジュールも提供され、IIS 上でも効率よく高速に動作することが可能になりました。 また、XAMP が登場する以前の PHP の入門書をひも解いてみると、その多くで IIS  上で PHP を動作させるための設定が紹介されていることは、その当時に書籍で…

0

Visual Studio 2010 [発行]機能で配置可能とするためのサーバー設定

以前、お客様から “Visual Studio 2010 の [発行] 機能を使って ASP.NET アプリの配置を行いたいのだけれど、サーバー側の設定がわからない” との質問をいただき、”詳細をブログに書きますよ” とお答えしたものの、うっかり書いてなかったので記述します。 その前に Visual Studio 2010 の持っている発行機能について、簡単にご紹介しておきましょう。   Visual Studio 2010 ASP.NET アプリケーションの 発行 機能 Visual Studio 2010 は ASP.NET アプリケーション向けに 発行 (Deploy) と呼ばれるアプリケーションの配置機能を持っています。 この機能は、単にアプリケーションのファイルを配置先に展開するだけでなく、Web サーバー (IIS) の設定や、使用しているデータベースのスキーマからデータまでをパッケージングして、配置先に反映させることができます。 なお、Visual Studio 2010 は ASP.NET アプリケーション配置のより詳しい説明につきましては、以下のドキュメントをご参照ください。 ASP.NET Web アプリケーション プロジェクトの配置の概要 http://msdn.microsoft.com/ja-jp/library/dd394698.aspx   ASP.NET Web 配置によるインストールを可能にするサーバー設定 サーバー側で Visual Studio…

0

MS SQL Server のデータベースを操作する PHP アプリを自動生成するツール

私のブログのアクセス解析結果を見ると、PHP コードから MS SQL Server に接続したいというニーズがかなりあるようです。 このブログでは以前に、PHP コードから MS SQL Server に接続するコードを紹介させていただきましたが、今回は一歩進んで (?) MS SQL Server のデータベースに対して、CRUD (Create, Read, Update, Delete) 機能を備えた PHP アプリケーションを自動生成してくれるツール SQL CRUD Application Wizard for PHP を紹介させていただきます。 SQL CRUD Application Wizard for PHP http://sqlcrudphpwizard.codeplex.com/ このツールについては、PHP on Windows ガイドライン の 4 章でも紹介しているのですが、ガイドラインでは概要の紹介のみにとどまっているので、この記事では、実際に PHP アプリケーションを出力するまでの手順を紹介させていただきます。   SQL CRUD Application Wizard for PHP による…

0

WebMatrix プロジェクトへの Umbraco インストール

前々回からの流れを引き継いで、今回も WebMatrix に OSS アプリケーションをインストールします。 今回インストールするのは、Umbraco です。 Umbraco、日本語だといまいちきちんとした呼び方が想像つかないのですが、英語圏の人たちは “あんぶれぃくぉぅ” と呼んでいるそうです。 ちなみに我々のチームでは、日本人らしく “うんぶらこ” と呼んでいますが、誰しもが自信を持って発音しているわけではありませんのであしからず。 余談が長くなりましたが Umbraco について簡単に紹介しておきましょう。   Umbraco とは? Umbraco は CMS を構築するための ASP.NET ベースのフレームワークで、フリーの OSS として提供されています。 日本ではちっとも知られていませんが、ヨーロッパでは非常に人気が高く、様々な企業サイトも採用しています。 たとえば、マイクロソフトの http://asp.net もそうですし、MSDN や TechNet も、その一部に順次採用していく予定となっています。 Umbraco についてのさらに詳しい情報については以下の提供元サイトをご参照ください。 Umbraco – The open source ASP.NET CMS http://umbraco.org/   WebMatrix プロジェクトへの Umbraco のセットアップ WebMatrix で Umbraco を使用したアプリケーション開発を行うには、WebMatrix の Web…

1

OSS アプリで作る IIS 簡単 Web ホスティング

このブログでは以前から、IIS の管理サービスを利用して Web ホスティングサービスを行うためのリンクの紹介、プロビジョニング用のサンプルコードなどを提供させていただいていましたが、今回はそれらの機能を実現してくれる OSS (Open Source Software) アプリケーション、WebSitePabel をご紹介させていただきましょう。 WebSitePanel については以前から評判を聞いており、提供元のサイトのデモアプリを試して、なかなか良さげであるとは思っていました。 しかし、当時は WebSitePanel がシェアウェアであったこともあり、とくにインストールして実際に試してみるということまでは行っていませんでした。 ところが先日、ホスティング事業者様向けのセッション資料を作成することになり、実際にインストールして使用してみたところ、その高機能性 & 高性能にすっかりド肝を抜かれ、これはぜひ紹介しなければ、と思い立ったしだいです、はい。   WebSitePanel とは? IIS の Web 共有ホスティング機能を提供してくれる Web アプリケーションです。 Web ホスティングの機能ということで、アプリケーション ランタイム ( ASP.NET、PHP ) や、データベース ( SQL Server、MySQL) の設定はもちろんのこと、拡張モジュールを追加することで、仮想環境の設定なども行えるようになっています。 また、Web 配置ツールの機能と、マイクロソフトが提供している Web App Gallery のフィードを利用して、OSS Web アプリケーションを簡単にインストールする機能を提供しています。 こういった豊富な機能と拡張性の高さはもちろんなのですが、特筆すべきはインストールしたままの素の状態で、基本的な共有 Web ホスティングの機能が使用できるということでしょう。 WebSitePanel ではカスタマイズなどを行わなくても、Web サイトを使用するためのユーザーと、サイトを作成し、Web ホスティングのサービスをユーザーに提供することができるのです。 このように良いことずくめの WebSitePanel…

0

NLB 環境における IIS7.x の共有構成について

IIS7.x の共有設定について先日のブログの記事で、ネットワーク負荷分散の方法として Windows Server 2008 の ネットワーク負荷分散 ( NLB ) 機能のリンクを紹介したのですが、肝心の IIS の共有設定について紹介しておりませんでしたので、取り急ぎリンクを掲載させていただきます。 TechNet – 『共有構成』 http://technet.microsoft.com/ja-jp/library/ff454006.aspx さて、上に紹介した IIS の共有設定の内容についてなのですが、これらについて検証、作業する場合は、必ず C:\windows\system32\inetsrv\config 以下の全ての *.config ファイルのバックアップコピーを取得しておいてください。 実は私、このドキュメントの翻訳監修作業中に設定を誤り、IIS が二度と起動しくなるという事態に陥ったことがあるのです。 しかも通常であれば、IIS のみを入れなおせば、正常に戻るはずですが、このときは、IIS を役割から削除し、残った設定ファイル類を手動で削除しても元にもどすことはできず、結局 OS を入れなおす ( というか、バックアップしてあった vhd に戻す ) という手順が必要になりました。   おまけ : 共有構成における ASP.NET アプリケーション配置の注意点 NLB を使用して、リクエストを複数の Web サーバーに負荷を分散させた場合、コンテンツのメンテナンスの工数を削減するためにコンテンツをネットワーク共有上に配置するという方法がとられることも多いと思います。 この方法、HTML や jpeg といった静的なファイルに関してはさほど問題にはなりませんが、ASP.NET アプリケーションについてはその仕組み上、あまりお薦めできません。 なぜなら .NET アプリケーションでは、マネージド…

0

IIS7.x サーバーのリソース調整関連の簡易リンク集

今回は、インターネット Web サーバー構築ガイドには載らない、サーバーのリソース調整機能に関するリンク集を作ってみました。 タイトルに IIS7.x と入っていますが、IIS のホスト以外にもいろいろと使用できると思います。 表記つながりでいうと、リンク先のドキュメントは、Windows Server 2008 や IIS 7.0 について書かれているものが大半ですが、現行の Windows Server 2008 R2 、IIS 7.5 の操作において、手順が異なることはありませんので、そのまま読み替えてお使いいただければと思います。   サーバーの “リソース” とは? リソース ( Resource )  は、直訳すると “資源” ということになります。 では サーバー リソース とはなんでしょう? 文字通り、”給仕人 = サービスを提供するもの” の “資源” ということですが、今回のこのブログの記事では、IIS 7.x を運用する際に使用されるサーバーの CPU、メモリ、ディスク容量などをまとめてこう記述します。 また、今回の記事は、サーバーの負荷を下げる、あるいは分散するという意図でリンクを集めていますので、パフォーマンスチューニングやセキュリティに関しては、今後の記事にご期待ください。   サーバーのリソース調整が必要な理由 “サーバー” は、第三者、つまりはクライアントにリソースをサービスとして提供している存在であるため、場合によっては自らのリソースをクライアントに使い切られてしまったり、複数のクライアントに対し適切にリソースを分配できない状況が発生する場合があります。 そのような状況を回避するために、Windows Server 2008 には、リソースを調整するための機能がツールとして搭載されています。 Windows…

0

IIS7.x 目的別操作手順 簡易リンク集

現在、以前リリースしました 『インターネット Web サーバー構築ガイドライン』 の正式版作成の作業に取り掛かっております。 さて、この 『インターネット Web サーバー構築ガイドライン』 は、IIS 7.x をより深く理解いただくために、様々な機能の解説が含まれているのですが、「解説はいいから具体的な手順のみが知りたいのだよ」 という方もいらっしゃるとと思います。 そこで今回は、『インターネット Web サーバー構築ガイドライン ( ドラフト版 )』 を作成する際に集めた情報を再利用し、IIS 7.x を操作するための具体的な手順が記載されているページのリンクを目的別にまとめてみました。 「とりあえず IIS を動かして使ってみたい」 という方がいらっしゃいましたら、ぜひこのページをご紹介いただければと思います。 なお、リンク先のドキュメントのほとんどは IIS7.0 (Windows Server 2008 & Vista ) をもとに書かれていますが、操作上 IIS7.5 ( Windows Server 2008 R2、Windows  ) と大きく異なる点はありませんので、適宜読み替えてご使用いただければと思います。   IIS7.x のインストール IIS は Windows OS 標準の Web サーバーですので、インストールに追加のモジュールは必要ありません。セットアップも OS の機能追加画面から行うことができます。…

3