a国产,中文字幕久久波多野结衣AV,欧美粗大猛烈老熟妇,女人av天堂

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

發(fā)布時(shí)間:2016-05-26 14:04

  本文關(guān)鍵詞:ASP.NET應(yīng)用,由筆耕文化傳播整理發(fā)布。


用VS2015中創(chuàng)建了一個(gè)非常簡(jiǎn)單的ASP.NET5程序:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

在Startup.cs中只輸入一行代碼:

using System; using Microsoft.AspNet.Builder; using Microsoft.AspNet.Http; namespace HellowAspNet5 { public class Startup { public void Configure(IApplicationBuilder app) { app.Run(context => context.Response.WriteAsync()); } } }

將Target KRE version改為CoreCLR:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

在Visual Studio中按F5能正常運(yùn)行,運(yùn)行結(jié)果如下:

Hello, ASP.NET 5 world!

然后嘗試部署到IIS中運(yùn)行,采用了2種方式:1)VS2015的Publish方式;2)手動(dòng)復(fù)制文件的方式。

一、VS2015的Publish方式

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

發(fā)布出來(lái)有2個(gè)文件夾,一個(gè)是approot文件夾,,一個(gè)是wwwroot文件夾:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

將IIS站點(diǎn)指向wwwroot文件夾,就能正常運(yùn)行。

Hello, ASP.NET 5 world!

看一下wwwroot文件夾中的內(nèi)容:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

神奇吧!就2個(gè)文件,一個(gè)是web.config,一個(gè)是AspNet.Loader.dll。

我寫的ASP.NET5程序跑哪去了?

打開(kāi)web.config一看:

看到kre-app-base,似乎知道了,進(jìn)入approot\src\HelloAspNet5文件夾一看:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

ASP.NET5應(yīng)用程序果然在這,但不是HelloAspNet5.dll(bin中也只有startup.prof),而是源代碼。

難道部署ASP.NET 5應(yīng)用程序要把源代碼一起部署?難道ASP.NET5在運(yùn)行時(shí)動(dòng)態(tài)編譯整個(gè)項(xiàng)目的源代碼?不解,這個(gè)問(wèn)題暫且放一邊。

回過(guò)頭來(lái)看一下approot文件夾,只有2個(gè)文件夾,除了剛才看過(guò)的src文件夾,剩下就是packages文件夾:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

不看不知道,一看嚇一跳!packages竟然有55.5M!

打開(kāi)一看,哇!好多包包,數(shù)一數(shù),有64個(gè)?磥(lái)運(yùn)行ASP.NET5應(yīng)用程序所需要的所有東西都在這了(除了AspNet.Loader.dll)。

再仔細(xì)一看,這么多包包中最耀眼的是一個(gè)超級(jí)豪華大包——KRE-CoreCLR-amd64.1.0.0-beta1,有50M。

這也是ASP.NET 5的一個(gè)變化,將運(yùn)行環(huán)境與應(yīng)用程序打包在一起,各個(gè)應(yīng)用程序之間互不影響。

但是,運(yùn)行一個(gè)只有寫了1行代碼的程序,竟然要帶上64個(gè)包包,有點(diǎn)說(shuō)不過(guò)去。

下面試試手動(dòng)部署。

二、嘗試手動(dòng)部署

根據(jù)之前版本的ASP.NET應(yīng)用程序部署經(jīng)驗(yàn),先得將Web項(xiàng)目編譯成dll。但是在VS2015中即使成功編譯Web項(xiàng)目,bin中也不會(huì)有。

后來(lái)發(fā)現(xiàn)在項(xiàng)目的Build設(shè)置中選中Produce outputs on build,可以編譯出dll:

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

編譯出來(lái)的dll在artifacts\bin中可以找到,比如這里的artifacts\bin\HelloAspNet5\Release\aspnetcore50\HelloAspNet5.dll(編譯出來(lái)有162K)。

然后在IIS中新建一個(gè)站點(diǎn),站點(diǎn)目錄中就放一個(gè)bin文件夾,其中只放一個(gè)HelloAspNet5.dll文件。

訪問(wèn)時(shí)出現(xiàn)下面的錯(cuò)誤:

HTTP Error 403.14 - Forbidden

這反過(guò)來(lái)證明AspNet.Loader.dll的用途,將它也復(fù)制到bin中。再訪問(wèn),依然出錯(cuò),但錯(cuò)誤信息變了:

Couldn't determine an appropriate version of KRE to run.

參考第一種部署方式,通過(guò)web.config告訴AspNet.Loader所需要的KRE版本。于是添加web.config文件,添加如下的配置:

又出現(xiàn)新的錯(cuò)誤:

Couldn't find package 'KRE-CoreCLR-amd64.1.0.0-beta1'. Locations probed: E:\AspNet5\WebSites\packages\KRE-CoreCLR-amd64.1.0.0-beta1 E:\AspNet5\packages\KRE-CoreCLR-amd64.1.0.0-beta1 E:\packages\KRE-CoreCLR-amd64.1.0.0-beta1

找不到CoreCLR的包,從中可以看出AspNet.Loader不會(huì)在當(dāng)前Web站點(diǎn)的目錄中找,而是從上一級(jí)目錄一直找到根目錄。

這個(gè)問(wèn)題好解決,建一個(gè)packages文件夾,將KRE-CoreCLR-amd64.1.0.0-beta1復(fù)制過(guò)來(lái)。

繼續(xù)出現(xiàn)新的錯(cuò)誤,而這次是讓人束手無(wú)策的錯(cuò)誤:

External component has thrown an exception. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.SEHException: External component has thrown an exception. Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace: [SEHException (0x80004005): External component has thrown an exception.] System.Web.HttpRuntime.HostingInit(HostingEnvironmentFlags hostingFlags, PolicyLevel policyLevel, Exception appDomainCreationException) +361 [HttpException (0x80004005): External component has thrown an exception.] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +541 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +122 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +731

然后。。。就沒(méi)有然后了,昨天折騰了半天也沒(méi)解決這個(gè)問(wèn)題。

然后。。。今天就寫了這篇隨筆。

然后。。。對(duì)AspNet.Loader.dll產(chǎn)生了興趣。。。

目前IIS Web站點(diǎn)中的目錄結(jié)構(gòu):

在IIS中部署ASP.NET 5應(yīng)用程序遭遇的問(wèn)題

【更新】

出現(xiàn)External component has thrown an exception異常之后,bin文件夾中會(huì)出現(xiàn)profile\startup.prof文件。

這里訪問(wèn)的錯(cuò)誤信息會(huì)變成:

The Main function returned unexpectedly with status code 0.


  本文關(guān)鍵詞:ASP.NET應(yīng)用,由筆耕文化傳播整理發(fā)布。



本文編號(hào):50137

資料下載
論文發(fā)表

本文鏈接:http://www.wukwdryxk.cn/kejilunwen/jisuanjikexuelunwen/50137.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶51ceb***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com
最近2019年中文字幕| 亚洲国产精品无码一区二区三区 | 欧美性一区| 国产又爽又黄又舒服又刺激视频| 久热国产vs视频在线观看| 小13箩利洗澡无码视频网站| 伊人久久大香线蕉成人| JiZz国产大全视频免费| 诱人的妺妺2中文在线观看车爱 | 久久久成人免费视频| 欧美色交| 国产精品2| 熟女丰满老熟女熟妇| 91精品国产99久久久久久| 被糙汉被禽哭尿进去h| a级视频免费看| 各种牲高潮videoshd| 欧美激情网| 亚洲精品久久久久久精品| 综合久久久久| 欧美久久久| 欧美性爽xxxzzzzzzzz| 91久久精品www人人做人人爽| 欧美极品另类ⅴideosde| av男人天堂网| 人碰人夜夜| 国产馆av| 情人网| 久久蜜桃精品av人妻| 阿克陶县| 精品人妻中文AV一区二区三区| 清河县| 涩涩av| 久久精品国产亚洲av忘忧草18 | 爱人若爱其身| 亚洲成av人片在www色猫咪| 久久女同互慰一区二区三区 | 亚洲性网站| 欧美性一区| 国产色av| 亚洲日韩精品A∨片无码加勒比|