「Mod mono」の版間の差分

imported>Administrator
編集の要約なし
編集の要約なし
 
(2人の利用者による、間の8版が非表示)
1行目: 1行目:
{{小文字}}
'''mod_mono'''とは、Apacheと[[XSP]]を連携させるモジュールである。ApacheとTomcatを連携させるmod_proxy_ajpやmod_jkと似たようなものと思って間違いない。
'''mod_mono'''とは、Apacheと[[XSP]]を連携させるモジュールである。ApacheとTomcatを連携させるmod_proxy_ajpやmod_jkと似たようなものと思って間違いない。


== 設定例 ==
== 設定例(Apache) ==
以下にFreeBSDでportsを使ってインストールした場合の例を示す。
以下にFreeBSDでportsを使ってインストールした場合の例を示す。
FreeBSDでportsを用いてインストールした場合のパス設定となっているので適宜書き換えてください。
FreeBSDでportsを用いてインストールした場合のパス設定となっているので適宜書き換えてください。
67行目: 68行目:
=== Apacheを再起動する ===
=== Apacheを再起動する ===
モジュールを読み込ませるためにApacheを再起動します。
モジュールを読み込ませるためにApacheを再起動します。
apacheの再起動後にpsコマンドでmod-mono-serverというプロセスが自動起動しているのを確認する。
<source lang="bash">
$ 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
</source>


== ASP.NET MVCを使うための設定 ==
== ASP.NET MVCを使うための設定 ==
81行目: 88行目:


=== 方法2:.htaccessで設定する ===
=== 方法2:.htaccessで設定する ===
ASP.NET MVCのルートディレクトリに.htaccessファイルを作り以下の内容を記述する。
[[ASP.NET MVC]]のルートディレクトリに.htaccessファイルを作り以下の内容を記述する。
なおForceTypeを用いる方法では
<source lang="apache">
<source lang="apache">
ForceType application/x-asp-net
## 旧:
## この方法ではASP.NET MVC 1は動いていたのだが、
## なぜかASP.NET MVC 3が動かなかった。
#ForceType application/x-asp-net
 
## 新:
## これでASP.NET MVC 3が動いた。これが正しいかは不明。とりあえず動いた。
SetHandler mono
# すべてをxspに処理させても良いが速度的に不利なので特定拡張子を弾く(apacheに任せる)。
<FilesMatch "\.(gif||jpg|jpeg|png|css|ico|xsl|js|zip|avi|mov|wmv|flv|swf)$">
    SetHandler None
</FilesMatch>
</source>
</source>


この方法は.htaccessがサブディレクトリでも使える設定になっていないと使えないので注意。
Apacheの設定で.htaccessが使えるようになっていることが大前提である。
また、[[ASP.NET MVC]]アプリをDocumentRoot直下ではなくサブディレクトリに展開する場合は.htaccessがサブディレクトリでも使える設定になっていること。
 
[[ASP.NET MVC]]を[[Mono]]で使う場合は、プロジェクト内に.htaccessファイルを作っておき、ファイルのプロパティにあるビルドアクションを「コンテンツ」にしておくと、発行時にコピーされるので一元管理できて便利。
 
Visual Studio 2010の「新しい項目」でテキストファイルを新規作成すると、そのファイルの文字コードは「UTF-8のBOM付き」となるが、.htaccessファイルにBOMが付いているとapacheでエラーとなるので注意。
 
[[ASP.NET MVC 3]]については「[[ASP.NET MVC 3#Monoでの動かし方]]」を参照。


== 関連項目 ==
== 関連項目 ==
* [[asp-state]]
* [[XSP]]
* [[ASP.NET MVC]]
* [[Monoのインストール]]
* [[Monoのインストール]]
* [[asp-state]]


{{stub}}
{{stub}}