Request failed. 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.Exception: Request failed. |
經(jīng)過多方的排查,發(fā)現(xiàn)是由于xslt文件中包含有msxsl:script腳本的原因造成的,進(jìn)一步細(xì)究,發(fā)現(xiàn)執(zhí)行msxsl:script需要代碼執(zhí)行權(quán)限為full trust,而在godaddy的虛擬主機(jī)中,代碼執(zhí)行權(quán)限為Medium。
郁悶啊,我不太可能因為這樣而放棄在xslt中執(zhí)行script,因為如果不能執(zhí)行script,那么xslt的開發(fā)難度將大增加,所以只好選擇其它主機(jī)了。最讓人郁悶的是,我剛剛在godaddy續(xù)費(fèi),早知如此,就不去他們家續(xù)費(fèi)了。
隨后,我又發(fā)信去godaddy和lunarPages咨詢關(guān)于full trust level的事情,得到的答復(fù)是godaddy不支持,而lp是可以支持full trust的,godaddy的主機(jī)是.net 1.1支持full trust level,而lp的主機(jī)則是完全支持的,那然后我也是花了一天的時間,去找關(guān)于full trust的主機(jī),需要這個功能的朋友注意了。
哪些美國主機(jī)可以支持Full Trust Level?
ixWebHosting 其實之前我也試過他們的主機(jī),但是說句實在話,速度和穩(wěn)定性方面實在是不也恭維,我當(dāng)時是沖著15個IP去的,價格上要比godaddy略高,但加上送的15個IP以及3個免費(fèi)域名,價格肯定要優(yōu)于godaddy了,單單是15個獨(dú)立IP,就值$2*15*12=360美元了。但從我試用并監(jiān)測二十來天的情況下來看,我個人認(rèn)為ix的windows主機(jī),基本上可以不考慮。
LunarPages 我沒有用過,沒有發(fā)言權(quán)了,但idcspy的版主說最近速度有些慢,也不推薦購買
arvixe.com 這個公司好像在網(wǎng)上沒什么消息,中文有幾篇文章都是說好的,不排除是托,也極有可能是中國人在國外搞的小主機(jī)公司,但有一點(diǎn),他們是支持Full Trust Level的,有用過這個公司主機(jī)的朋友留下言。
WebHost4life 這個公司比較有意思,他們有中文的客戶混在idcspy論壇里,使用的人好像也不多,但可以肯定的是,支持full trust level的。
最后一招,自己買VPS/VDS或者獨(dú)立主機(jī)了,目前godaddy的vds一年大概要兩千多吧,windows主機(jī)最起碼也得買512內(nèi)存的了,太小了根本跑不起來,誰讓windows系列產(chǎn)品都是吃內(nèi)存大戶呢。其它的也有便宜的,但我覺得應(yīng)該要在2500-3000這個級別才可以用。
此外為了服務(wù)器安全,很多國外的Asp.net虛擬主機(jī)(比如GoDaddy)都把設(shè)置代碼執(zhí)行權(quán)限設(shè)置為Medium Trust Level,這時候,與Full Trust Level不同,Asp.net程序會有很多限制。如果你正在開發(fā)通用的Web產(chǎn)品,比如BBS、Blog、CMS、Portal,那么為了讓產(chǎn)品能更大程度適應(yīng)各種運(yùn)行環(huán)境,你需要考慮到Asp.net中等安全模式的相關(guān)問題。
什么是中等安全模式?
Asp.net通過信任級別(Trust Level)設(shè)置代碼執(zhí)行權(quán)限,默認(rèn)有5種,分別是:Full、High、Medium、Low、Minimal。虛擬主機(jī)提供商通常在系統(tǒng)的 machine.config配置了system.web>trust level=’Medium’ />…
常見異常信息:
Required permissions cannot be acquired. 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. SecurityException: Request for the permission of type ‘System.Security.Permissions.ReflectionPermission failed 或者: System.Security.SecurityException: Request for the permission of type ‘System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089′ failed. |
中等安全模式有哪些限制?
CodeDom、Emit以及基于CodeDom、Emit實現(xiàn)的Ioc、AOP技術(shù)無法使用。
VirtualPathProvider無法使用。
BuildProvider無法使用。
HttpWorkRequst無法使用。
OleDb無法使用。默認(rèn)情況下Access數(shù)據(jù)庫無法使用,不過GoDaddy可以通過管理面板將Access訪問權(quán)限開啟。
P/Invoke無法使用。System.Data.SQLite及sqlite-net都 是通過P/Invoke調(diào)用C語言版本的SQLite.dll實現(xiàn)的,因此也不能使用了。
ReflectionPermission及RestrictedMemberAccess無法訪問,導(dǎo)致Ado.net for Entity Framework、DB4O,以及好多ORM工具無法使用。
一些常見問題的解決辦法
SQLite無法使用:可以使用Access或VistaDB作為替換。
BlogEngine.net默認(rèn)安裝時出錯:只需將Web.config中的system.web>trust level=’Medium’/>刪除即可。
LINQ to Entities / ADO.NET Entity Framework無法使用:參考http://mosesofegypt.net/post/Entity-Framework-minimum-permission-considerations.aspx
Discuz!net無法使用:使用YetAnotherForum代替。
附上國外主要的Windows虛擬主機(jī)商
標(biāo)簽:青海 張家界 玉溪 通遼 鐵嶺 北京 北京 廣元
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《國外windows主機(jī)要注意權(quán)限級別》,本文關(guān)鍵詞 國外,windows,主,機(jī)要,注意,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。