程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> ASP.NET 程序發布詳細過程,asp.net發布過程

ASP.NET 程序發布詳細過程,asp.net發布過程

編輯:關於.NET

ASP.NET 程序發布詳細過程,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]
  • 歡迎轉載,但必須注明博客來源。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved