mvc上傳到雲虛擬機的問題解決

来源:http://www.cnblogs.com/zhangxiangsong/archive/2016/10/06/5933369.html
-Advertisement-
Play Games

我用vs2015寫了個小網站,.Net Framework4.5、 mvc 5,發佈到本機iis上正常,在美橙申請了一個雲虛擬機,發佈過程中遇到的一些問題記錄如下: 1、伺服器支持的版本比較低 上傳後打開網站顯示: HTTP 錯誤 404.0 - Not Found您要找的資源已被刪除、已更名或暫時 ...


我用vs2015寫了個小網站,.Net Framework4.5、 mvc 5,發佈到本機iis上正常,在美橙申請了一個雲虛擬機,發佈過程中遇到的一些問題記錄如下:

 

1、伺服器支持的版本比較低

上傳後打開網站顯示:

HTTP 錯誤 404.0 - Not Found
您要找的資源已被刪除、已更名或暫時不可用。

詢問美橙的技術支持,說只能支持到.net framework4.0、mvc4。

沒辦法只好試著降低版本。在vs2015中把解決方案中所有的項目目標框架都改為.net framework4.0 , 在NuGet中把mvc5卸載,安裝mvc4,立刻出現了一堆的錯誤,尤其是實體類的一些擴展的部分類中的特性

         [MaxLength(128, ErrorMessage = "典型客戶長度不能超過128個字元")]

都無法識別。引用的庫不一致的版本很多,無從下手。

 

2、缺少一些dll文件

於是乾脆下了個vs2012,在vs2012中重新建解決方案,選擇ASP.NET MVC4 Web應用程式,目標框架選擇.net framework4.0 ,暫時只建了一個控制器home,一個視圖index,在本地通過之後,再上傳到雲虛擬機中,依然404錯誤。

再與美橙的技術人員聯繫,對方幫我開啟了詳細報錯。

我在web.config中加入了

  <system.web>
    <customErrors mode="Off" />
  </system.web>

再訪問網站,提示無法載入......

於是按照提示,分別上傳了:System.Net.Http.Formatting.dll、System.Web.Http.dll、System.Web.Http.WebHost.dll,終於可以看到我的視圖了。

 

3、加入UEditor後Newtonsoft.Json的版本問題

用vs2012重新建各個項目,把原vs2015解決方案中的各個項目逐個的拷貝過來。

拷貝了插件UEditor之後,再運行一直提示:未能載入文件或程式集“Newtonsoft.Json, Version=4.5.0.0...... ,再查看引用的是UEditor\net\Bin中的Newtonsoft.Json.dll,版本為6.0.2.16931,我移除引用,重新引用packages\Newtonsoft.Json.4.5.6\lib\net40中的Newtonsoft.Json.dll,然而再查看引用的Newtonsoft.Json屬性,依然還是UEditor\net\Bin中6.0版本的Newtonsoft.Json,我有點糊塗,為什麼重新引用不生效呢?

費了很大周折,最後通過修改web.config文件

  <!--解決加入UEditor後,提示未能載入文件或程式集“Newtonsoft.Json, Version=4.5.0.0......的錯誤-->
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

將所有版本的Newtonsoft.Json都指向當前6.0版本,這個問題解決。

 

4、401.3錯誤

把vs2012寫的程式,在本地調試通過後,再上傳,訪問網站提示401.3錯誤,應該是許可權問題,再請美橙的技術處理一下,靜態的html頁可以顯示,但home/index依然無法打開,也不顯示詳細的錯誤提示,根據查到的方法在web.config中加入

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <!--上傳到雲虛擬機後,必須加這個配置項才能打開網頁-->
    <modules runAllManagedModulesForAllRequests="true" />  
  </system.webServer>

終於看到無法載入文件的詳細提示,再按提示上傳那三個文件到bin,再訪問網站,終於可以正常運行了。

 

5、還是要贊一下美橙的技術支持人員,回答、解決問題非常迅速、耐心。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • MMU MMU=Segmentation Unit+Paging Unit //MMU: Memory Management Unit logical address = Segmentation Unit= linear address = Paging Unit= physical addres ...
  • $()函數在大多的JavaScript類庫中都被作為一個選擇器函數來使用,在jQuery中就是。 $(“#id”)通過id來獲取元素,用來代替document.getElementById()函數。紅色函數(JavaScript) $(“tagName”)通過標簽名來獲取元素,用來代替documen ...
  • 1、JQuery對象“ 如: $(‘div’).text("div展示的信息") 可以看成”是一個包含一個dom數組 和 包含所有Jquery方法的容器 2、每當我們調用選擇器方法查找dom樹里的元素時,其實就是把找到的dom元素存入一個JQ對象里的dom數組中,然後再把這個JQ對象返回。 當我們調 ...
  • 多態之抽象類與介面的相似點及不同點,剛學習的一點收穫,或許不是很完整,借鑒看視頻及一些被人寫的文章自己寫的下的一些心得!以便之久複習使用! 一、抽象類 (1) 抽象方法只作聲明,而不包含實現,可以看成是沒有實現體的虛方法 (2) 抽象類不能被實例化 (3) 抽象類可以但不是必須有抽象屬性和抽象方法, ...
  • 多態之抽象類與虛方法的相似點及不同點 : 不同點 1、方法關鍵字不一樣 虛方法的方法關鍵字是:virtual。 抽象類的方法關鍵詞是:abstract 2、基類的方法是否有方法體/實現 虛方法的方法:聲明並實現方法。 抽象類的方法:只作聲明,無方法體/無實現。 共同點 1、子類/派生類都要重寫父類的 ...
  • Web Is JavaScript Single-Threaded? Quill 1.0 – Better Rich Text Editor for Web Apps Next Generation Server Compression With Brotli Debugging With Node... ...
  • 對於新手的我,現在搞不了大項目,只有從小實驗小項目一點一滴做起。今天就把自己寫的猜拳小游戲給大家分享一下。適合新手一起學習。。 using System; using System.Collections.Generic; using System.ComponentModel; using Sys ...
  • web 發展迅猛,技術日新月異層出不窮,web 的安全性同樣是一場持久的攻防戰。而 HTTPS 的普及,為 web 通信構建了更加良好和安全的根基。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...