Modul 10 - Lekcija 2 (ZAVRŠNA)
Izbacivanje "Release" kodova u Internet Informacijske Servise i GitHub BackUp CodeBase-a
⏱️ Trajanje: ~3 časa | 📚 Nivo: Finaliziranje Softwera | 🎯 Završni korak
Kao programer vi razvijate aplikaciju u "DEBUG" modu (Vaš vizuelni studio trči na svom serveru "IIS Express", sa uključenim greškama i ogromnim ispisima Exception linija u Žutoj Boji).
Za pustanje rjesenja na stvarni web server institucije i pravi Windows IIS server Vi mijenajte Build Ociju na "Release". Visual Studio tada vrši finalnu kompresiju koda ignorisući i uklanjajuce usputne pauze za testiranja (BreakPoints)!
Prije prelaska na server, moramo smjestii naš radni direktoriji na stabilan i siguran GitHub udaljeni (Remore) repozitoriji u cloudu, kako jedan kvar SSD PC Diska usljed udara groma nebi ugasio vaš posao od 6 mjeseci na e-Upravi!
// Otvori "Package Manager Console" ili CMD Terminal unutar Vasaoj Root foldera e-Uprave
1. git init // Paljenje verizonisanja u samom folderu
2. git add . // Zabiljezi APSOLUTNO SVE IZMJENE svih C# Viewova i Modela!
3. git commit -m "Finalno zavrsio aplikaciju e-uprave za deployment" // Udaranje Pecata
4. git branch -M main
5. git remote add origin https://github.com/vladaba/e-uprava.git // POveznica vaseg PC-a sa OBLAKOM
6. git push -u origin main // SLANJE
Vaša aplikacija do malo ranije spajala se na neku testnu PC Bazu (npr: "SQLEXPRESS (localdb)"). Server koji ugosti vaš publish naravno nema taj lokalni db. Treba nam pametni prekidač koji zna mjenjati Web.Config OVISNO jel radite za svojim CPU Strojem, ili se on nalazi na mreži (Release):
ASP.NET automatski izvršava ove transformaciju pri Publishu!
<!-- Ovaj Kod mijenja String od baze unutar default web Configa prilikom PUSHLIShA! -->
<configuration>
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=192.162.2.1;Initial Catalog=Produkcija;Integrated Security=True"
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>
</configuration>
C:\Publish_Vlada)
C:\inetpub\wwwroot\Ukoliko produkcijska databaza neočekivano stane s radom! Žuti ekrani smrt donose detalje našeg koda napadačima sa otvorenim Query kodovima! Ovo zakonsi UVIJEK iskljucujemo u konfigu!
<system.web>
<!-- Preusmjerava na nase kontrolerske Stranice "U Izradi / Ne radi"! Da niko nikad ne vidi kod Exceptiona! -->
<customErrors mode="On" defaultRedirect="~/Error/Index">
<error statusCode="404" redirect="~/Error/NemaEkrana" />
<error statusCode="500" redirect="~/Error/ServerStanicaDolje" />
</customErrors>
</system.web>