ASP.NET 程序发布详细过程

前言

ASP.NET网站的发布,无论是初学者还是高手,在程序的发布过程中或多或少会存在一些问题,譬如VS发布ASP.NET程序失败、IIS安装失败、IIS发布失败、局域网内不能访问

配置文件错误、权限不足等一系列问题,结合我带领的500技术团队反应的各种问题,我今天花点时间总结一下,方便大家,共同学习,共同进步

为了后文的深入详细分析,我写了一个小Demo,代码附上。本次基于VS2013,OS为WIN10,IIS7等环境讲解。(其他操作系统如WIN7原理也类似,但有细微差别)

1、解决方案整体概览

2、前端

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="sessionDemo.aspx.cs" Inherits="Test.sessionDemo" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <div><asp:Button ID="btnSesison" runat="server" Text="Session" OnClick="btnSesison_Click" /></div>

    </div>
    </form>
</body>
</html>

3、后端

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Collections;
namespace Test
{
    public partial class sessionDemo : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSesison_Click(object sender, EventArgs e)
        {
            //Session["a"] = "a";
            //Session["b"] = "b";
            //Response.Write(Session["a"].ToString());
            //Response.Write(Session["b"].ToString());
            string[] strSession = { "王文佳", "赵武", "杨雄", "熊熊" };
            createSession(strSession);
            getSession();
        }

        #region 自定义方法
        //创建Session
        public void createSession(string[] arrStr)
        {
            //创建数组
            string[] str=new string[arrStr.Length];
            for (int i = 0; i < arrStr.Length; i++)
            {
                str[i] = i.ToString();
                Session[str[i]] = arrStr[i];
            }
        }

        //遍历Session
        public void getSession()
        {
            IEnumerator sessionEnum = Session.Keys.GetEnumerator();
            while (sessionEnum.MoveNext())
            {
                Response.Write(Session[sessionEnum.Current.ToString()].ToString()+";");
            }
        }

        //清空Session,但不结束会话
        public void clearSession()
        {
            Session.Clear();
        }
        //结束Session会话
        public void abandonSession()
        {
            Session.Abandon();
        }
        #endregion
    }
}

4、测试结果

一、ASP.NET程序发布

1、用VS2013打开解决方案。

2、选中解决方案,点击鼠标“右键”—>从弹出对话框中,选择“清理解决方案”。

3、待第2步“清理解决方案”结束后,选中“解决方案”—>点击鼠标“右键”—>在弹出对话框中,选择“重新生成解决方案”。

4、待第3步“重新生成解决方案”结束后,选择web运用程序,如下图中“testDemo”—>点击鼠标“右键”—>在弹出对话框中,选择“发布”。

5、设置“配置文件”节点,点击“下一步”。

6、设置“连接”节点,点击“下一步”。

7、设置“设置”节点,点击“下一步”。

8、设置“预览”节点,点击“发布”。

9、发布后的文件如下图,此时文件发布成功,发布成功后,点开文件夹,所有页面的.cs文件都放进bin里面了。

二、IIS安装

1、打开“控制面板”—>选择“程序”。

2、在弹出对话框中选择“启用或关闭Windows功能”。

3、在弹出对话框中,选择“Internet Information Services”(如果初学者,建议全部选择,对于老手,按需选择),点击“确定”。

4、点击确定后,系统正在运用所做的更改。

5、运用程序更改结束后,选择“立即重新启动”。系统重新启动后,则IIS配置结束。

6、重启电脑后,测试IIS配置是否成功。在浏览器栏,输入“http://localhost”,若出现如下界面,则表示IIS安装成功。

三、IIS发布网站

1、在“我是Cortana,小娜,有问题尽量问我”输入框输入“Internet Information Services”.

2、打开IIS主界面。

3、选择“网站”—>点击鼠标“右键”,在弹出对话框中,选择“添加网站”。

4、在弹出对话框中,设置相关参数。

5、此时,IIS主界面,“网站”多了一个站点“www.testWebSite”,即是刚才给站点取得名字。

6、配置运用程序池

7、配置默认文档

8、默认文档添加成功后,如下图所示:

9、为了防止权限不足,将刚才发布的文件添加成员“everyone”,并赋予权限。右键—>属性—>安全—>编辑—>添加

—>输入“everyone”—>为用户everyone赋权限—>确定。

10、注册IIS。在所用程序中找到大写V,选择“Visual Studio 2013”—>选择“Visual Studio Tools”—>以管理员身份选择“VS2013 开发人员命令提示”,进入CMD。输入"aspnet_regiis -i"。

11、至此,整个发布结束。

12、测试。在浏览器地址栏输入:”http://localhost:8090/sessionDemo.aspx“,访问。

13、至此,IIS发布网站整过过程结束。

四、配置IIS应注意事项

1、注册IIS问题

在所用程序中找到大写V,选择“Visual Studio 2013”—>选择“Visual Studio Tools”—>以管理员身份选择“VS2013 开发人员命令提示”,进入CMD。输入"aspnet_regiis -i"。

2、权限不足问题

点击要VS已发布文件,右键—>属性—>安全—>编辑—>添加—>输入“everyone”—>为用户everyone赋权限—>确定。

3、防火墙问题

局域网内访问不了,大部分因为防火墙问题,若直接关闭防火墙,则不安全,提倡以下解决方法。

HTTP服务默认实用80端口,只需要在防火墙(特别注意系统自带的防火墙)中启用HTTP服务(80端口)就可以;如果使用其它的防火墙,也需要进行类似的操作。

a、开始—>所有程序—>管理工具—>高级安全 Windows 防火墙—>在高级安全 Windows 防火墙的左边栏;选择“入站规则”—>在右边栏选择"新建规则“—>在弹出

的窗口依次选择:选中端口—>下一步—>选中TCP以及特定本地端口填入要开放的端口号(这里填入80;当让也可以选择开放所有端口
下一步—> 选中允许连接—>下一步—>选中所有选项—>下一步—>填入名称(这里填入IIS)。

4、检测IIS是否安装成功

在浏览器网址中输入:http://localhost ,若出现如下界面,则表示安装成功。

5、端口问题

http默认端口为:80,IIS发布时,选择其他端口。

6、运用程序池,应选择与网站名称相同,选择集成方式(当都发布不成功时,可以经典与继承来回切换测试),选择版本V4。

7、VS发布时,选择Release版本,而不是Debug版本,切CPU选择 any CPU。

8、除以上问题外,还有其他问题,我会逐渐更新。

  • 感谢您的阅读,若有不足之处,欢迎指教,共同学习、共同进步。
  • 博主网址:http://www.cnblogs.com/wangjiming/。
  • 本博客为博主原创。
  • 如您喜欢,麻烦推荐一下;如您有新想法,欢迎提出,邮箱:[email protected]。
  • 欢迎转载,但必须注明博客来源。
时间: 2024-12-21 07:48:42

ASP.NET 程序发布详细过程的相关文章

asp.net程序发布详解

本文转载自Alan_beijing的博客ASP.NET 程序发布详细过程.内容进行了部分更改. ASP.NET网站的发布,无论是初学者还是高手,在程序的发布过程中或多或少会存在一些问题,譬如VS发布ASP.NET程序失败.IIS安装失败.IIS发布失败.局域网内不能访. 配置文件错误.权限不足等一系列问题,结合我带领的500多人的技术团队反应的各种问题,我今天花点时间总结一下,方便大家,共同学习,共同进步. 为了后文的深入详细分析,我写了一个小Demo,代码附上.本次基于VS2013,OS为WI

Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)

原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二) Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 3. Nginx配置反向代理 3.1 cnetos 安装nginx 首先,我们需要在服务器上安装Nginx.参考网址 3.1.1:添加Nginx存储库 要添加CentOS 7 EPEL仓库,请打开终端并使用以下命令: sudo yum install epel-release EPEL的全称叫 Ex

Xcode7最新app打包发布详细过程(一)

Xcode7程序打包详细过程:1.用开发者账号登录开发者中心,来到这个页面,点击图中箭头指的地方: 2.第二布来到这个页面, 3.点击图中的加号可以创建一个新的开发者证书 4.选取该圆圈按钮,点击下方的continue 5.当为选择生成什么样的证书时,继续按钮是不能点击的 6. 7. 8. 9. 10.第二步"生成appID 11. 12. 13.这里不需要选择,只保持默认的就行. 14.同样保持默认的,点击继续按钮即可 15. 16. 17. 18. 19.

Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践

原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践 环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输: xftp 1.在本地创建asp.net core应用发布 1.1 使用Vs2017 新建一个asp.netcore项目 步骤略(一路next),当然你也可以用命令行创建. 1.2 发布项目 在项目路径下执行命令 dotnet publish –c release 先本地运行是否有问题,减少因为本

ASP.NET程序发布

详细流程请参考文章:https://www.cnblogs.com/wangjiming/p/6286045.html 主要补充个人操作过程中遇到的问题: 1)网站发布完成后,站点下没有aspnet_client文件夹. 没有此文件夹则网站无法访问,原因是没有此文件夹代表没有.NET框架环境,需要重新注册IIS. 选择"Visual Studio 2013"->选择"Visual Studio Tools"->以管理员身份选择"VS2013 开

Xcode7最新app打包发布详细过程(二)

承接上一遍文章,继续讲解app打包的过程. 20.生成你的项目的appID, 21.开始生成描述文件,点击描述文件右上方的+号,回来到选择开发证书的地方,此处包含两个名字相同的开发证书,一个是博主生成的,另一个是同事生成的,两个证书的不同之处在于生成的时间不同,最主要的是生成证书的时候使用的钥匙串文件不同. 22.选择完开发证书再选择设备, 23.给描述文件命名(后面需要在Xcode里面选择此处生成 的描述文件) 24.描述文件生成. 25. 26.生成以后应该在Xcode里面配置一些信息即可打

asp.net mvc4应用程序发布、部署、常见问题

这里为大家介绍asp.net mvc4应用程序发布.部署.常见问题,借鉴了网络上各位大神的参考文献(感谢各位大神),在这里做分享和记录.笔者用的环境,网站的编写使用ASP.NET MVC4.0 平台版本.NET Framework 4.0 操作系统window7.(第一次结合百度经验发布.部署成功,有不全面的地方请各路大神指正,谢谢!) 一.  Vs2012创建网站发布步骤如下: 1.在我们创建并编写好一个ASP.NET MVC4的应用程序后(写好一个测试网页),右键点击项目名称,选择"发布(B

ASP.NET程序如何更新发布

ASP.NET程序如何更新发布 一.首先右键项目,点击“发布” 然后,新建名称.类型选择文件,然后点击下一步: 点击发布即可! 二.

部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)

部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序 在下载的Istio安装包的samples目录中包含了示例应用程序. Bookinfo应用 部署一个样例应用,它由四个单独的微服务构成,用来演示多种 Istio 特性.这个应用模仿在线书店的一个分类,显示一本书的信息.页面上会显示一本书的描述,书籍的细节(ISBN.页数等),以及关于这本书的一些评论. Bookinfo 应用分为四个单独的微服务: productpage