首頁  >  文章  >  後端開發  >  ASP.NET網站發佈的流程詳解

ASP.NET網站發佈的流程詳解

Y2J
Y2J原創
2017-05-06 11:52:594660瀏覽

這篇文章主要為大家介紹了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">
 <p>
  <p><asp:Button ID="btnSesison" runat="server" Text="Session" OnClick="btnSesison_Click" /></p>
   
 </p>
 </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、測試。在瀏覽器網址列輸入:”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。外,還有其他問題,我會逐漸

更新。 【相關推薦】

1. ASP免費影片教學

#2.

ASP教學

3. 李炎恢ASP基礎影片教學

#

以上是ASP.NET網站發佈的流程詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn