BlogEngine Hatalarından Kurtulmak

by Murat Duman 25. Mart 2008 15:45
Gelen e-postalardan anladığım kadarıyla en çok yaşanılan sorun dizin erişimleri ile ilgili. Öncelikle BlogEngine ilk çalıştırıldığında ya da herhangi bir işlem yaparken karşınıza aşağıdaki gibi bir hata çıkabilir;

Server Error in '/BlogEngine' Application.
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".

<!-- Web.Config Configuration File -->

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


Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.

<!-- Web.Config Configuration File -->

<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>


Böyle bir hata mesajı bize gerçek sorun hakkında bilgi vermemekte. Bu sebeple hemen Web.Config dosyasını açıp <customErrors mode="On"/> yazılı ifadeyi <customErrors mode="Off"/> ifadesi olarak değiştirelim. Böylece hatanın hangi sayfa ve kod satırı ile ilgili olduğunu ayrıntılı olarak görebileceğiz.

Gerekli ayarlamayı yaptıktan sonra karşımıza yetki sorunu ile ilgili aşağıdaki gibi bir hata gelebilir. Bunu çözmek için ise IIS 5.1 kurulu ise (Windows XP) MakineAdı\ASP.NET kullanıcı hesabı için App_Data klasörü ve alt klasörlerine Read+Write (Okuma ve Yazma) izinlerini vermeniz gerekiyor. Eğer bilgisayarınızda Windows Vista yüklü ise IIS 6.0 ve üzeri kurulu olabilir. Böyle bir durumda "Network Service" adındaki hesap için App_Data klasörüne ve alt klasörlerine (Recursive) Read+Write izinlerini vermeniz gerekiyor.
Halen hata almaya devam ediyorsanız. Lütfen bu yazıya yorumlarınızı gönderin ve çözmeye çalışalım. İyi çalışmalar.



Server Error in '/BlogEngine' Application.
Access to the path 'c:\inetpub\wwwroot\BlogEngine\App_Data\users.xml' is denied.
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.UnauthorizedAccessException: Access to the path 'c:\inetpub\wwwroot\BlogEngine\App_Data\users.xml' is denied.

ASP.NET is not authorized to access the requested resource. Consider granting access rights to the resource to the ASP.NET request identity. ASP.NET has a base process identity (typically {MACHINE}\ASPNET on IIS 5 or Network Service on IIS 6) that is used if the application is not impersonating. If the application is impersonating via <identity impersonate="true"/>, the identity will be the anonymous user (typically IUSR_MACHINENAME) or the authenticated request user.

To grant ASP.NET access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the appropriate user or group. Highlight the ASP.NET account, and check the boxes for the desired access.

Yorumlar

28.03.2008 12:22:35 #

Burak Yalçın

Benimde başlarda başıma gelen bir sorundu.Ama hallettim Smile Yazılarınızın devamını bekliyoruz.

Burak Yalçın Turkey | Reply

17.04.2008 01:36:19 #

Onur Çağlayan

Server Application Unavailable
The web application you are attempting to access on this web server is currently unavailable.  Please hit the "Refresh" button in your web browser to retry your request.

Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server. Please review this log entry to discover what caused this error to occur.

Nedir acaba?

Onur Çağlayan Turkey | Reply

17.04.2008 10:33:17 #

Murat Duman

Genel bir hata sayfasıdır. Sunucunun event loglarına bakarak ayrıntılı bilgiyi edinebilirsiniz. Ayrıca debug="true" ve customErrors mode=Off yaparak gerçek hatayı görüyor olmanız gerek. Bunlar da çalışmıyorsa lmhost dosyasında bir sorun olabilir.

Murat Duman Turkey | Reply

25.04.2008 10:37:51 #

güzel

güzel.

güzel | Reply

12.05.2008 14:15:18 #

ates

access database e iis6 da kayıt ekleme işlemini gayet güzel yapıyorum. ama access'e ole object field ekliyorum ve dosyaları binary e çevirip atınca sorun çıkarıyor. bu işlem local makinada sorunsuz çalışıyor.

ates Turkey | Reply

12.05.2008 14:21:04 #

Murat Duman

Merhaba Ateş,
Bu bahsettiklerini BlogEngine üzerinde mi yapıyorsun yoksa senin kendi yaptığın bir proje mi? Yaptıklarından ve aldığın hatadan ayrıntılı olarak bahsedebilirsen yardımcı olmaya çalışırım.
İyi çalışmalar.

Murat Duman Turkey | Reply

12.05.2008 17:44:02 #

ates

Dim con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Server.MapPath("App_Data/deneme.accdb"))
        Dim adp As New OleDbDataAdapter("select * from ates", con)
        Dim SourceLoc As String = ("c:\\" + FileUpload1.FileName)
        Dim Fs As FileStream = New FileStream(SourceLoc, FileMode.Open, FileAccess.ReadWrite)
        Dim ImageData As Byte()
        ReDim ImageData(Fs.Length)
        Fs.Read(ImageData, 0, System.Convert.ToInt32(Fs.Length))
        Fs.Close()
        Dim ds As New DataSet
        adp.Fill(ds, "ates")
        Dim tb As New DataTable
        Dim k As DataRow
        tb = ds.Tables("ates")
        k = tb.NewRow()
        k(1) = TextBox1.Text
        k(2) = TextBox2.Text
        k(3) = ImageData
        tb.Rows.Add(k)
        tb = ds.Tables("ates").GetChanges()
        ds.Tables(0).AcceptChanges()
        Dim uyg = New OleDbCommandBuilder(adp)
        adp.Update(tb)
        con.Close()

ates Turkey | Reply

12.05.2008 23:41:28 #

Murat Duman

Merhaba Ateş
Kodun tamamına bakmadan şu satırı sormak istiyorum.
Dim SourceLoc As String = ("c:\\" + FileUpload1.FileName)
Sonuçta sunucuda senin veri dosyan c sürücüsünün altında tutulmuyor. "Server.Mappath" objesini bir araştırırsan sunucudaki göreceli (relative) adresi o satırda göstermen gerekli ki veritabanına kod ulaşabilsin.
İyi çalışmalar.

Murat Duman Turkey | Reply

22.07.2009 16:16:31 #

cüneyt

merhaba hocam;

ben kontrol panelınde  etkinlik işlemleri die bi yerim wardı oraya gırınec web config hatası verıyo web configten off ladıgım zaman  500 sever hatası veriyo buna nasıl bi çözüm uygulaya bilirim yardımcı olursanız sevnirim şimdiden teşekkür ederim.

cüneyt Turkey | Reply

Yorum ekle




  Country flag

biuquote
  • Yorum
  • Canlı önizleme
Loading



Powered by BlogEngine.NET 1.5.1.4
Theme by Mads Kristensen

Yazar Hakkında

Murat Duman, muratduman, blog author, seo optimized Murat Duman

E-posta Send mail

Facebook ProfileTwitterLast FMFlickr PhotosFriendFeed UpdatesFeedburner RSS

Reklamlar

Son Yorumlar

Yorum RSS comment

Alexa Ranking

Technology Blogs - BlogCatalog Blog Directory

Yasal Uyarı

Bu sitede sunulan tüm bilgi, dökümanların kullanımından doğacak sorunlardan yazar sorumlu tutulamaz. Bu site ve günce(blog) işverenimin görüşlerini, amaçlarını, planlarını veya stratejilerini temsil etmez. Tüm yazılanlar aksi belirtilmedikçe benim fikrimdir. Uygunsuz yorumlar silinecektir.

Copyright 2007-2011 © Murat Duman