asp.net mvc 网站如何发布?

代码改变世界 2009-09-27 04:22:52
本人刚接触ASP.net mvc 用的是1.0版本。
我刚做完一个项目,项目在vs中完全正常。
但是发布到IIS后除了首页可以显示外,其他页面上的所有连接点进去都是无法找到网页,还有有些链接是用jQuery ajax读取数据库(linq to sql)然后显示,点了之后也一点反应都没。
首页使用地址重写,代码如下:

public void Page_Load(object sender, System.EventArgs e)
{
// Change the current path so that the Routing handler can correctly interpret
// the request, then restore the original path so that the OutputCache module
// can correctly process the response (if caching is enabled).

string originalPath = Request.Path;
HttpContext.Current.RewritePath(Request.ApplicationPath, false);
IHttpHandler httpHandler = new MvcHttpHandler();
httpHandler.ProcessRequest(HttpContext.Current);
HttpContext.Current.RewritePath(originalPath, false);
}

下面是Global.asax 文件中routing规则:

public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = ""} // Parameter defaults
);

}

protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}

请高手帮忙解答啊~~~在线等待
...全文
3124 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
矿泉水 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 zyb_lovec 的回复:]
本人刚接触ASP.net mvc 用的是1.0版本。
我刚做完一个项目,项目在vs中完全正常。
但是发布到IIS后除了首页可以显示外,其他页面上的所有连接点进去都是无法找到网页,还有有些链接是用jQuery ajax读取数据库(linq to sql)然后显示,点了之后也一点反应都没。
首页使用地址重写,代码如下:

C# code


public void Page_Load(……
[/Quote]
你已经发布成功了,能否把你的发布的过程详细的再说一下呢?我是第一次发布,有点搞不懂,谢谢了
矿泉水 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 dc5858518 的回复:]
欢迎各位加入ASP.NET MVC框架超级群!让我们共同学习、进步!QQ群号:40985466

非常乐意为大家提供一个良好的交流平台!
[/Quote]
怎么拒绝了呢???
dc5858518 2009-12-16
  • 打赏
  • 举报
回复
欢迎各位加入ASP.NET MVC框架超级群!让我们共同学习、进步!QQ群号:40985466

非常乐意为大家提供一个良好的交流平台!
wuyq11 2009-09-27
  • 打赏
  • 举报
回复
network service' 登录失败
用户不存在或密码问题
在"服务器-安全性-登录名"中建立" "用户,
然后再在 "服务器-数据库-安全性-用户"中添加即可
tkx180 2009-09-27
  • 打赏
  • 举报
回复
还没结贴,顶之。
wangan2008 2009-09-27
  • 打赏
  • 举报
回复
up
liujintaozyc 2009-09-27
  • 打赏
  • 举报
回复
顶下 到百度百一下
代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
刚在别的机器上发布发现没装ASP.NETMVC的也不行
服务器一定要装吗?
代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
晕。。。是数据库操作类啦。。。说错
有没人回答啊??
代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
对了~~顺便问另外一个问题,也是这个项目里面的问题
就是网站发布出来后出现这样的错误
用户 'nt authority\network service' 登录失败
但是我的iis上其他网站都可以,后来我把解决方案中另一个项目(工厂类)中的Settings.settings文件中的链接字符串改正(之前被我改过一次)后再发布就可以了,但是这样是不是数据库连接要改还得重新编译啊?因为网站发布出来后里面并没有把工厂项目中的Settings.settings文件带进去
lyvscf 2009-09-27
  • 打赏
  • 举报
回复

public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = ""} // Parameter defaults
);

}

protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}



你的Global.asax 里面只写了首页的 其他的页面列!?
你发布MVC 项目的时候要注意在iis 筛选器中 加 iisrewrite.dll
代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
yeah!!哇哈哈~~搞定了~~多谢楼上这位仁兄~~
我用的是第二种方法,其实我在发帖之前也试过这种方法,但是我没把“确认文件是否存在”的复选框去掉,结果还是不行,刚试了把它去掉就可以了。。。
结贴!
EricGuzuqiang 2009-09-27
  • 打赏
  • 举报
回复
这是文档
How to: Deploy an ASP.NET MVC Application, http://msdn.microsoft.com/en-us/library/dd410407.aspx
Using ASP.NET MVC with Different Versions of IIS (C#), http://www.asp.net/learn/mvc/tutorial-08-cs.aspx
sdjz1988sd 2009-09-27
  • 打赏
  • 举报
回复
关注
EricGuzuqiang 2009-09-27
  • 打赏
  • 举报
回复
这个是我的笔记



MVC 1.0 & IIS Deployment

IIS 7.0
直接创建WebSite就可以了

可能出现500.19错误,原因是先安装了vs,后安装iis
解决方案: cmd导航到C:\Windows\System32\inetsrv
运行appcmd unlock config -section:system.webServer/handlers
如果没有权限就到该目录config文件夹下分配一下权限。


IIS 6.0
如果服务器上没有安装asp.net mvc 1.0, 则需要在mvc app项目中将System.Web.Mvc、System.Web.Routing、System.Web.Abstractions三个dll的copy local属性设为true。这三个dll需要和项目dll一起发布。
部署到IIS6.0有两种方法
1,添加扩展名
在项目Global.asax文件中更改路由方式(添加.mvc扩展名)
routes.MapRoute(
"Default",
"{controller}.mvc/{action}/{id}",
new { action = "Index", id = "" }
);
routes.MapRoute(
"Root",
"",
new { controller = "Home", action = "Index", id = ""
};
在iis中添加.mvc映射和WildCard Application Maps


2,无后缀名
a, iis站点-->主目录-->配置-->映射-->插入
找到c:\windows\microsoft.net\Framework\v2.0....\aspnet_isapi.dll, 取消"确认文件是否存在", 确定
代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
我也不想用啊。。。我是改别人做的,因为需求有变
改完了以为做完了谁知道发布都这么难。。救命啊。。。。
龙翔飞雪 2009-09-27
  • 打赏
  • 举报
回复
jsp的struts 可以讲讲,

.net的MVC 没玩过, 闪~~ (.net有必要用MVC吗??)

代码改变世界 2009-09-27
  • 打赏
  • 举报
回复
自己顶啊~~~~分不够可以再加啊

62,066

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧