Apacheの環境下で、ASP.NETをまともに動かす事を目標に、試行錯誤を続けているが、いよいよ、うまく行くのか、ダメなのか結論を出す時が来た。
簡単におさらいをしよう。①ApacheにMod_AspDotNetをインストールして、.aspxファイルが使えた。②.aspxのデザインには、コピペを使い、CSSを導入する事で、ASPの持つ機能と優れたデザインの両立が可能だ。③データベースには、ADO.NET driver for MySQL をインストールする事で使える。所が、④データベースを加えると、Apache環境下では、動作しない問題に遭遇。
そこで、事前に.aspxファイルをコンパイルして置けば、良いのでは無いかと、その疑問を試す事になる。
所が、Web Developer 2010 Expressには、その肝心なコンパイラーが見当たらない。ネットをググると、aspnet_Compiler.exe をMS-DOS環境のコマンドで操作する事で出来る様だ。その説明がここに有った。
説明と違う所は、Windows7の場合、プログラムの場所が移動している。その場所は、C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler.exe となる。お勧めの方法は、まず、
①Dドライブに、例題と同じホルダーを準備する。一つは、D:\Inetpub\wwwroot\PreCompile で、ここにソースを配置する。今一つは、d:\PreCompile で、ここにコンパイル後のファイルが配置される。
②コマンドプロンプトを開き、上記場所に移動する。aspnet_compiler -v PreCompile -p D:\Inetpub\wwwroot\PreCompile d:\PreCompile をクリップボードにコピーして、コマンドプロンプトに右クリックで貼り付け、実行。
③出来た、ファイルを目的のホルダーにコピーする。
キーボードを叩くのも良いが、きっと間違える。だからやになる前に上記の操作をお勧めする。
結果は、ダメでしたね。Apacheの環境下では、やはり無理のようだ。何もMySQLを使ったデータベースが有るからではない。そもそもダメだった。意味不明の文字が表示されるだけだった。だが、このコンパイラーは、IISでは、立派に使える。実際に、.aspxを公開するとなると、コードが表示される危険を無くす目的で、コンパイルは必要な作業になるだろう。
これも収穫の一つとすべきだ。
Apacheが動作する環境で、.aspx使うには、Mod_AspDotNetを導入するのか、IISをポートを変えて導入するのか、2つの方法が有ると書いたが、その一つは、あえなくつぶれた。
次は、IISをポートを変えて、試す事をやって見たい。