本地MVC项目发布到IIS服务器

0瞎扯

朋友们有时候我们写个一个web程序只能使用卡西尼服务器调试,下面我教大家发布到IIS服务器上(包括本地ISS7.5和远程服务器

IIS)

1.VS发布

a.点击web项目->发布

b.在发布->配置文件->新建

连接中选择文件系统,并选择发布文件要存放的地址

设置->配置:如下

设置完成后点击发布

发布好的目录

b.配置IIS

0.创建网站之前必须启动:W3SVC(World Wide Web Publishing Service)服务,作用:通过 Internet 信息服务管理器提供 Web 连接和管理。对应的进程:C:\Windows\system32\svchost.exe

1.打开IIS(打开方式),网站添加一个新网站,

               

2.在右侧先启动后浏览

这时如果出现下图HTTP错误500-19-Internal Server Error

我们查看原因 :配置错误 由于权限不足而无法读取配置文件(权限不足,我们给他加权限)

解决:编辑文件权限,选中“Xxx网站”节点→右键→编辑权限→加入everyone账户。

3,再继续浏览 出现错误HTTP 错误403.14-Forbidden

原因:没有为请求的 URL 配置默认文档,并且没有在服务器上启用目录浏览。

解决方案:选中"Xxx网站"节点→看右边的“功能视图”→目录浏览→在右边的窗口中点击“启用”、“禁用”。不建议启用目录浏览

当不启用目录浏览,是在Asp.net中要设置配置一个默认显示的页面:选中“网站”节点→“功能视图”→“默认文档”→双击→在右边的对话框中“添加”一个默认要显示的文档的名称,并移动(上移、下移),在MVC中配置路由即可,不必设置默认页。

更改应用程序池->双击自己的网站项目

更改.net Framework

4,正常情况下就可以访问自己的网站啦,

5,其他IIS错误总结

(1)HTTP错误500.21-Internal Server Error

上图的错误,可能的原因:1>IIS安装不完整。2>没有在IIS上注册.net framework。

找到对应的.net framework目录下,执行aspnet_regiis.exe命令,重新注册一次.net framwork到IIS。注册目录如下:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i   (安装)

打开控制台(空白处+shift)弹出命令窗口注册.net framwork到IIS

(2)数据库验证错误

原因:当前网站连接数据库的时候采用的是windows身份验证方式,而当前网站对应的应用程序池中的账户没有访问sql server的权限。解决:把网站连接数据库的身份验证方式改成sql server身份验证方式,使用Sql server账号登录。
(3)HTTP错误500.24-Internal Server Error

程序使用的是经典模式,服务器使用的是集成模式,选中对应网站的应用程序池,修改为经典模式。

(4)HTTP错误404.17-Not Found

服务器与网站程序.net版本不一致。或者是IIS安装不完整,或者是没有正确注册.net framework(错误二)。

3发布到服务器

连接服务器win+R

同上方法配置:

注意IIS7发布时MVC项目是会出现:HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容

解决方法:更改网站根目录web.config文件

添加

<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>

要设置<modules>节的值为true;

4.结束语

这就是我在IIS发布时的总结,如果有没解决的问题可以给我留言,我会尽可能的帮助大家的!!!

时间: 2024-10-31 23:28:37

本地MVC项目发布到IIS服务器的相关文章

MVC项目发布到IIS遇到的问题

MVC4 + .NET Framework 4.5 +Windows Server 2008+ IIS7.5 + 4.0集成模式池 ,发布后可能会遇到404.0 或者403.14错误,在web.config中加入以下代码可以解决此问题. <configuration> <system.webServer> <modules runAllManagedModulesForAllRequests="true" /> </system.webServ

MVC项目发布后出现404错误

今天在本机win7上面测试.发布,都好好的.然后,放到阿里云服务器上面去测试,就挂掉了.只有静态文件是可以访问. 问题出在了MapRequestHandler上面了,下面添加一个配置信息,就可以了. <system.webServer> <modules runAllManagedModulesForAllRequests="true" > <remove name="UrlRoutingModule"/> </module

在使用 AjaxFileUpload 上传文件时,在项目发布到 iis 后,图片不能预览

在使用 AjaxFileUpload  上传文件时,图片已经上传成功了,在站点没有发布时,可以预览,可是在项目发布到 iis 后,图片就不能预览,在网上找了很多的方案也没解决,最后的解决方案如下: 1.开始运行 regedit 打开注册表,先备份注册表 2.找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters 3.在 编辑 菜单上指向 新建 ,然后单击 DWORD 值 . 4.键入 EnableAggres

Mvc网站发布到IIS

网站发布步骤: 这部分是转载文章 在此标明出处,以前有文章是转的没标明的请谅解,因为有些已经无法找到出处,或者与其它原因. 如有冒犯请联系本人,或删除,或标明出处. 因为好的文章,以前只想收藏,但连接有时候会失效,所以现在碰到好的直接转到自己这里. 原文 出处http://blog.sina.com.cn/s/blog_acb983ba0101c5um.html 1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布: 2.弹出网站发布设置面板,点击&

Maven 如何将本地的项目发布到 Archiva 中

很多时候,我们可能并不希望将我们的构建代码发布到公共的 Maven 仓库中. 为了一些私有的项目发布到公司内部的 Archiva 中,如何使用 Maven 进行发布. 这个其实比较简单. 你需要满足下面 3 个条件. 一个具有发布权限的 Maven 仓库 在 settings.xml 中配置你可以访问这个仓库的用户名和密码 配置你的 pom.xml 文件. 在配置成功后,你可以运行 mvn clean deploy 进行发布. 具体来说,针对一个条件,具有发布权限的 maven 仓库,最简单的办

MVC项目发布IIS CSS无法加载

IIS配置网站在本地服务器调用不了CSS,新装了一个WIN8系统,IIS配置好之后做好的网站样式表浏览器不调用 处理方法 : 把静态内网 勾选打上即可 如果上述方法操作完成还是访问不鸟就继续往下看 权限的处理<configuration>   <location path="允许匿名访问的文件夹名称或者文件路径">      <system.web>         <authorization>            <allow

Visual Studio Code 如何将新项目发布到GIT服务器

1.在VSCode中新建或打开未添加源码管理的文件夹 2.按Ctrl+Shift+G切换到"源控件"视图,点击右上方的[初始化储存库]按钮 3.输入消息内容,然后点击右上方的[提交]按钮. 如果提交失败请注意输出控制台中的提示,一般是未设置用户信息,可以通过命令行终端设置,也可以直接跳到第4步修改文件来设置 直接切换到终端控制台中输入提示的命令,如果只针对当前项目设置用户信息则忽略--global参数 4.在Windows资源管理器中打开文件夹,进入.git目录,用文本编辑器打开con

将之前的DotNetOpenAuth项目发布到IIS

首先需要安装IIS: 控制面板\程序--打开或关闭Windows功能: 默认的不会全选的,需要手动展开选择,能选就全选上吧,特别是asp.net选项,不选的话发布的网站也运行不了. 安装完后需要注册asp.net: 使用管理员权限打开cmd,输入: C:/Windows/Microsoft.NET/Framework64/v4.0.30319/aspnet_regiis.exe -i 安装完后开始发布项目: cmd输入inetmgr打开IIS: 添加网站,配置路径和端口: 还需要注意修改应用程序

使用ngrok将本地web项目发布到互联网

1.下载对应版本Sunny-Ngrok. 2.解压之后,点击启动工具,输入你的隧道id   (后面有得到的方法) 3.最后显示在线表示成功 4.以上的前提是需要得到一个隧道id,此时我们就需要在Sunny_Ngrok注册账号,建立隧道 5.最终会得到你需要的隧道id 6.现在你可以访问该网址了(需要项目服务器打开tomcat) 版权所有,出自http://www.cnblogs.com/ytlds