哇哈 , ASP.NET MVC 正式版及 mono 2.4 分別於前幾日推出
這次我就給它試一試到底 ASP.NET MVC 能不能跑在 Linux 上面
結果是 , 成功了
放個測試網址 http://aspnetmvc.pigo.idv.tw
這個測試網址的 Sample 是我從 VS 2008 預設的 ASP.NET MVC 專案產生的
目前在 Linux mono 上已經可以針對範例程式作 URL Route , 但是在會員註冊部分不行 , 我還沒詳查是甚麼原因 , 不過 Route 機制既然可以跑 , 那代表 ASP.NET MVC 元件已經可以正常無誤的運作了
由於 ASP.NET MVC 會牽扯到 Url Route 的機制 , 所以 mono 若打開 AutoApplications 功能會有問題 , 因此要為每個 Virtual Host 手動指定 Application 才可以正常運作
PHP才是我的愛~
不妨用Jexus试试,比XSP强得多,是一款真正的ASP.NET WEB服务器。
网址: linux.j66.net
Hi, I tried to run mvc with nginx. However i cannot start it. Did you set index to Index.aspx? Also will it automatically search the folder Views/Homes to find Index.aspx? Thanks!!!
您好,我是剛剛接近asp.net mvc的新手. 我試著用nginx跑asp.net mvc.
在 /etc/nginx/sites-available/default 裡面,
我的設定如下
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/your.domain1.xyz.access.log;
location / {
root /var/www/MvcTest;
index Default.aspx Index.aspx;
fastcgi_index Index.aspx;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
root 指到 var/www/MvcTest
MvcTest 是我從VS2008自動生成的code publish 來的. 裡面有bin, Content, Scripts,Views 等資料夾
Index.aspx 在Views/Home裡面
當我跑nginx的時候, 我得到 404錯誤
Server error in ‘/’ Application.
我有試了一下, 我推測可能是因為找不到Index.aspx. 你也是用自動生成的code放到nginx上面跑.可不可以幫我看看問題可能在哪呢?
謝謝你
我自己沒試過用 fastcgi 跑耶
如果是 MVC 架構
理論上任何的 request 都必須傳給 fastcgi 的 Index.aspx 或 Default.aspx (看你的 Default Index file 是甚麼)
這篇倒是有範例
http://mono-project.com/FastCGI_Nginx
@pigo
其實我就是參照那篇做的, 可是就是跑不起來 @@
可以請教一下你是怎麼設定的呢? 用哪些工具呢?
我有試了一下 如果我在root資料夾建一個 Index.aspx, 裡面有短短的Hello. 這樣跑起來的時候就會顯示Hello. 所以我猜測tool沒有去下面的子目錄找Index.aspx@@
那你是用什麼跑的呢? 另外是用Ubuntu還是OpenSuse呢?
我用的方式如下
https://www.pigo.idv.tw/archives/61
CentOS
ASP.NET MVC 只會去執行網站根目錄的 Index.aspx 或 Default.aspx , 照你的說法 , 你希望去執行到 VIEW/HOME 下面的 Index , 這樣應該是錯的
MVC 架構是從第一層的 Index.aspx 去分派任務給 Controller , 由 Controller 負責將 Views 中的 aspx render 出來
所以無論如何 , 所有的網站Request 都應該 pass 給根目錄的 Index.aspx 或 Default.aspx
你可以下載我目前範例上的 , 也是 vs2008 生成的 , 但我有稍微修改就是了
http://aspnetmvc.pigo.idv.tw/aspnetmvc.tar.gz
fastcgi_index請設為 Default.aspx
先試試看有沒有辦法跑
@pigo
謝謝你的回覆 🙂
新版的MVC都不會Generate Default.aspx. 我也不知道要怎麼弄一個
目前我就直接讓他有稍完整一點的path
http://www.mydomain.com/ 不會過
http://www.mydomain.com/Home 就ok了
謝謝你囉 ^^