Mod mono

提供: MonoBook
2012年3月5日 (月) 08:07時点におけるimported>Administratorによる版 (→‎Apacheを再起動する)
ナビゲーションに移動 検索に移動

mod_monoとは、ApacheとXSPを連携させるモジュールである。ApacheとTomcatを連携させるmod_proxy_ajpやmod_jkと似たようなものと思って間違いない。

設定例

以下にFreeBSDでportsを使ってインストールした場合の例を示す。 FreeBSDでportsを用いてインストールした場合のパス設定となっているので適宜書き換えてください。

設定ファイルを作成する

/usr/local/etc/apache22/Includes/mod_mono.conf というファイルを作り以下の内容を記述する。

<IfModule !mod_mono.c>
    LoadModule mono_module /usr/local/libexec/apache22/mod_mono.so
</IfModule>

<IfModule mod_headers.c>
    Header set X-Powered-By "Mono"
</IfModule>

# MonoServerPathを明示しないと.NET Framework 4.0ではなく
# .NET Framework 1.1が動いてしまう。
# .NET 1.1
#MonoServerPath /usr/local/bin/mod-mono-server
# .NET 2.0
#MonoServerPath /usr/local/mono/bin/mod-mono-server2
# .NET 4.0
MonoServerPath /usr/local/mono/bin/mod-mono-server4

####
MonoDebug true

####
#MonoSetEnv LANG=ja_JP.UTF-8

####
MonoAutoApplication enabled

####
AddType application/x-asp-net .aspx
AddType application/x-asp-net .asmx
AddType application/x-asp-net .ashx
AddType application/x-asp-net .asax
AddType application/x-asp-net .ascx
AddType application/x-asp-net .soap
AddType application/x-asp-net .rem
AddType application/x-asp-net .axd
AddType application/x-asp-net .cs
AddType application/x-asp-net .vb
AddType application/x-asp-net .master
AddType application/x-asp-net .sitemap
AddType application/x-asp-net .resources
AddType application/x-asp-net .skin
AddType application/x-asp-net .browser
AddType application/x-asp-net .webinfo
AddType application/x-asp-net .resx
AddType application/x-asp-net .licx
AddType application/x-asp-net .csproj
AddType application/x-asp-net .vbproj
AddType application/x-asp-net .config
AddType application/x-asp-net .Config
AddType application/x-asp-net .dll
####
DirectoryIndex index.aspx
DirectoryIndex Default.aspx
DirectoryIndex default.aspx

Apacheを再起動する

モジュールを読み込ませるためにApacheを再起動します。

apacheの再起動後にpsコマンドでmod-mono-serverというプロセスが自動起動しているのを確認する。

$ ps ax | grep mod-mono-server
51724  ??  Ss     0:01.57 /usr/local/bin/mono --debug /usr/local/lib/mono/4.0/mod-mono-server4.exe --filename /tmp/mod_mono_server_global --nonstop --master

ASP.NET MVCを使うための設定

方法1:httpd.confで設定する

<Location /mvc_app_dir>
ForceType application/x-asp-net
</Location>

「/mvc_app_dir」の部分は適宜書き換えること。

この方法では配置するたびにApacheを再起動しなければならないので面倒。

方法2:.htaccessで設定する

ASP.NET MVCのルートディレクトリに.htaccessファイルを作り以下の内容を記述する。

ForceType application/x-asp-net

この方法は.htaccessがサブディレクトリでも使える設定になっていないと使えないので注意。

関連項目