6.3.17

İlk defa internet sitesi açacaklar için notlar

Coming Soon'dan teste geçerken yapmanız gerekenlerle ilgili minik notlarımı paylaşacağım.


1. Hazırladığınız yazılımı asp.net Project olarak açtıysanız yayına almadan önce mutlaka Visual Studio üzerinde Publish yapmalısınız. 


Peki Publish nasıl yapılır?


Projenizin Solution Explorer kısmında (sağ blokta) yer alan proje adının üzerine sağ tıklayarak, Publish seçin.




Açılan ekranda Custom seçin.




Custom seçtiğinizde aşağıdaki gibi bir ekran açılacaktır. Burada yapacağınız Publish için bir profil ismi verin.



Şimdi Publish Method'unu seçin. Publish methodu seçerken aşağıdaki maddeleri dikkate alarak seçim yapabilirsiniz.


Web Deploy : Direk olarak web server'ları üzerinde paylaşmanızı sağlar. Her web host bu publish şeklini kabul etmeyebilir.


FTP (File Transfer Protocol) : Web servislere ulaşılan en yaygın yöntemdir. Direk olarak web server'larınıza bir kopya yollanmasını sağlar. Host sağlayıcınız tarafından bu yönteminde desteklenmesi gerekmektedir.


File System : Kendi bilgisayarınızda publish dokümanınızı saklamanızı sağlar. Oluşturulan dokümanı daha sonra kendiniz host'unuza atmalısınız. Bu yöntem sayesinde paylaştığınız tüm versiyonların birer kopyasını elinizde tutabilirsiniz. Önceki versiyonlara kolayca ulaşmanızı sağlar. Bu sebeple her zaman bu yöntemi kullanıyorum.


FPSE (FrontPage Server Extensions) : Direk sayfanızı server'larda paylaşmanızı sağlar fakat sadece bazı hosting servisleri tarafından desteklenmektedir. Ayarların hostunuz tarafından sağlanması gerekmektedir.


Ben File System seçerek devam edeceğim.



File System seçtikten sonra  Target Location seçmeniz gerekecek ve aşağıdaki ekran açılacak, Publish edeceğiniz dokümanları nereye kaydetmek istediğinizi soracaktır. Publish edeceğiniz dokümanların kaydedilmesini istediğiniz yeri seçin. Hatta yeni bir klasör oluşturup, içine atmanız daha sağlıklı olacaktır.



Next butonuna basın.




Sizden Configuration seçimi yapmanızı isteyecektir. Seçim yapabileceğiniz Debug ve Release alanları olduğunu göreceksiniz. Aşağıda elimden geldiğince açık ve kısa bir şekilde farklarını ve görevlerini anlatmaya çalıştım.


Debug: Proje derlenirken kullanılır, optimizasyona kapalıdır. .pdb (program database) dosyalarını bin klasörü içinde tutar. .pdb dosyaları projenin database ve durum bilgilerini içinde tutar.


Release : Kodlar daha fazla optimize edilir, son kullanıcıya iletilirken kullanılır. Projenin debuggable olmasını engeller ve .pdb dosyalarını bin içinde tutmadığından projenin küçülmesini sağlar. 


Ben Release kullanarak işleme devam edeceğim.




Ve tebrikler artık Publish demeye hazırsınız.




Publish'in doğru olması durumunda aşağıdakine benzer bir ileti alacaksınız ve artık dokümanlarınız hazır sayılır. 




Publish yaptığınız dokümanları aldığınız hosting içine eklemelisiniz. (Nasıl eklerim diyorsanız burada ilgili yazıyı bulabilirsiniz.)


Not: Projenizde değişiklik yaptıktan sonra tekrar ilk adımı uygulayıp (üzerine yazmış olursunuz ama) Publish butonuna basabilirsiniz. Publish yaptıktan sonra yaptığınız düzenlemeler sadece .aspx dokümanında (front-end) ise duzenlediginizsayfaadi.aspx dokümanını yenilemeniz, eğer yaptığınız düzenlemeler aspx.cs dokümanında (back-end) ise bin klasörü içinde projeadi.dll dokümanını hosting içinde güncellemeniz yeterli olacaktır.



2. Sitenizi Publish etmeden önce Web.Config dokümanında bir değişiklik yapmadıysanız muhtemelen aşağıdaki hatayı alacaksınız.



Bu hatayı almanız durumunda Web.Config dosyasının içine system.web tag'i altına <customErrors mode="Off"/> kodu eklemelisiniz.

<configuration>

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

3. Almanızın ihtimal dahilinde olduğu hatalardan biri de Security Exeption hatası.



Bu hatayı düzeltmek için yine Web.Config dosyanıza system.web altına 
<trust level="Full" originUrl="" />  kodunu eklemeniz gerekecektir.

<configuration>
       <system.web>
            <trust level="Full" originUrl="" />
            <customErrors mode="Off" />
            <compilation targetFramework="4.0" />
       </system.web>
</configuration>

Not: Tabi bu işlemleri yaptıktan sonra yeniden Publish yapıp, Web Hosting içinde bulunan dosyalarınızı güncellemeyi unutmayın.

4. Responsive yapıya uygun bir sitede web sitesinin farklı ekranlarda tam oturması için (sağa sola kaymaması için) <head></head> tag'ı içine eklemeniz gereken kod aşağıdaki gibidir.

<meta name="viewport" content="width=device-width, initial-scale=1.0">