Son zamanlarda projemizi MVC 3'ten MVC 4'e geçirdik. .NET 4.0 çerçevesini hedefliyoruz ve web uygulamamız 32 bit Bazı referanslar nedeniyle dahil etmeliyiz.ASP.NET/MVC 4 paketleme ve küçültme 64 bit IIS 7.5 sunucusunda 404 sorun
Yapmakta olduğumuz sorun, paket/minification'mizi Chirpy'den yerleşik ASP.NET paketlemeye dönüştürdüğümüzdür. Site, hem Windows Server 2003/IIS 6 hem de 2008/IIS 7.5, SADECE .NET 4.0 ve 64 bit geliştirme makinelerimizle 32 bit sunucularda sorunsuz çalışmaktadır. Paketleme/kıymetlendirme, yukarıdakilerin hepsinde iyi çalışır.
SADECE .NET 4.0 yüklü bir 64-bit Windows 2008/IIS 7.5 sunucusunda, demetleme çalışmaz. Hem oluşturulan komut dosyaları hem de stiller için 404 hatası alıyoruz.
.NET 4.5'i 64 bit sunucuya yüklersek, düzgün çalışır. Bunun nedeni şudur: Bazı sunucular .NET 4.5 olmadan çalışır ve bunu gerektirir. Bunun da ötesinde, Windows Server 2003/64-bit .NET 4.5 ile uyumlu değildir, bu yüzden bir sorun varsa, bu düzeltme çalışmaz.
Garip olan, örnek MVC 4 örnek internet uygulaması hedefleme .NET 4.0 yerleşik x86, sorun sunucusunda sadece 4.0 ile gayet iyi çalışıyor. Web.config, birlik, günlüğe kaydetme, elmah ve noktadan daha az yapılandırma dışında tamamen aynıdır.
Bu konuda herhangi bir yardım çok takdir edilecektir.
@Scripts.Render("~/bundles/WebApp.Main")
<link href="@Url.Content("~/Content/SiteLess.less")" rel="stylesheet" type="text/css" />
@Styles.Render("~/bundles/Content/WebApp.Main")
...
DÜZENLEME: bizim düzeninde paketlerini baþvurduðunuzu nasıl
İşteusing System.Web;
using System.Web.Optimization;
namespace WebApp
{
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
bundles.UseCdn = false;
// .debug.js, -vsdoc.js and .intellisense.js files
// are in BundleTable.Bundles.IgnoreList by default.
// Clear out the list and add back the ones we want to ignore.
// Don't add back .debug.js.
bundles.IgnoreList.Clear();
bundles.IgnoreList.Ignore("*-vsdoc.js");
bundles.IgnoreList.Ignore("*intellisense.js");
bundles.Add((new ScriptBundle("~/bundles/WebApp.Register1")).Include("~/Scripts/jquery.ba-tinypubsub.min.js",
"~/Scripts/knockout-2.1.0.js",
"~/Scripts/WebApp/WebApp.Register.RegisterStudent.js",
"~/Scripts/WebApp/WebApp.Register.RegisterPresenter.js"));
bundles.Add((new Bundle("~/bundles/WebApp.Register2")).Include("~/Scripts/WebApp/WebApp.Register.StudentSelect.js"));
bundles.Add((new ScriptBundle("~/bundles/WebApp.View1")).Include("~/Scripts/jquery.ba-tinypubsub.min.js",
"~/Scripts/WebApp/WebApp.View.ImagePresenter.js",
"~/Scripts/WebApp/WebApp.View.ImageResults.js"));
bundles.Add((new Bundle("~/bundles/WebApp.View2")).Include("~/Scripts/WebApp/WebApp.View.StudentsSelect.js"));
bundles.Add((new ScriptBundle("~/bundles/WebApp.Print1")).Include("~/Scripts/WebApp/WebApp.Print.SelectedIdArray.js",
"~/Scripts/jquery.ba-tinypubsub.min.js",
"~/Scripts/WebApp/WebApp.Print.DocumentsSelect.js",
"~/Scripts/WebApp/WebApp.Print.DocumentsSelected.js",
"~/Scripts/WebApp/WebApp.Print.DocumentsPresenter.js",
"~/Scripts/WebApp/WebApp.Print.StudentsPresenter.js",
"~/Scripts/WebApp/WebApp.Print.PrinterSelected.js",
"~/Scripts/WebApp/WebApp.Print.OutputSummary.js",
"~/Scripts/WebApp/WebApp.Print.OutputPresenter.js",
"~/Scripts/WebApp/WebApp.Print.NoStudentPresenter.js"));
bundles.Add((new Bundle("~/bundles/WebApp.Print2")).Include("~/Scripts/WebApp/WebApp.Print.StudentsSelect.js",
"~/Scripts/WebApp/WebApp.Print.StudentsSelected.js"));
bundles.Add((new ScriptBundle("~/bundles/WebApp.Main")).Include("~/Scripts/modernizr.custom.33607.js",
"~/Scripts/jquery-1.6.1.js",
"~/Scripts/jquery-ui-1.8.10.custom.min.js",
"~/Scripts/jquery-ui.min.js",
"~/Scripts/json.js",
"~/Scripts/jquery.validate.min.js",
"~/Scripts/jquery.marquee.js",
"~/Scripts/YUI.js",
"~/Scripts/Common.SearchHighlight.js"));
bundles.Add((new StyleBundle("~/bundles/Content/WebApp.Main")).Include("~/Content/jquery.marquee.min.css",
"~/Content/YUI.css",
"~/Content/Site.css",
"~/Content/ui-lightness/jquery-ui-1.8.10.custom.css"));
}
}
}
var: Yanıtlar/güncellemeler
- Evet, İşte BundleConfig.cs var Etkinleştirilmiş 32 bit uygulamalar bayrağı, uygulama havuzunda True olarak ayarlandı.
- 404 bu http://xx.xx.xx.xxx/WebApp/bundles/WebApp.Main?v=03pBc7hdH1lHLtZGx-JMosNaLpMK7fcmI0uI6auknHw1
- Windows olay izleyiciye benziyor verir isteğine yol Daha sonra yeniden, bunu kaldırmayı .NET 4.5, yükledikten sonra çalışır bir şey
- gösterir Bir çalışır .NET 4.0
- kurumsal 2008 64-bit Sunucu. Sorun sunucusu standart sürümdür. Sorunu düzeltip düzeltmediğini görmek için VM'yi yeniden oluşturacağız.
Bu, http://forums.asp.net/t/1846749.aspx/2/10?Published+MVC+web+to+IIS7+in+Windows+Server+2008+doesn+t+serve+ yardımcı olabilir paketler – Jack
BudleConfig.cs mesajınızı gönderin. – CrazyCoderz
@Jack Teşekkürler, bu yazıyı okuduk ve değişiklikleri önerdik, ancak yardımcı olmadı. Bizimki aslında, yalnızca 64-bit kutusunda yüklü olan .NET 4.0 VE .NET 4.5 ile kutudan çıktı. .NET 4.5 bir gereklilik olduğunu düşünmedim. – Dustin