[ Anchy_86 @ 06.09.2014. 02:36 ] @
Pozdrav svima,
od utorka pokušavam da rešim par problema, ali nikako ne uspevam, pa bi mi svaka pomoć dobro došla :)
Inače da naglasim da prvi put u životu radim publish, tako da ne zamerite ako bude nekih glupih pitanja :)

Naime, projekat se sastoji od više manjih web app. Svaka "stranica" je poseban projekat (ne pitajte zašto).
1. Kada radim publish tog projekta, da li treba biti namešteno na "build" ili "release"?
2. Na računaru sam napravila folder, ima isti naziv kao i naziv sajta koji je. U njemu sam napravila onoliko foldera, koliko imam ovih "manjih" projekata.
3. Na IIS napravim website, putanju mu stavim da je ovaj ovaj folder (koji sam prethodno napisala) na računaru.
E sad kreću "prava" pitanja. Da bi se lakše snašli, napraviću screenshoot, pa vi pogledajte da li je sve ok odrađeno :)
Slika1
4. Kada odem na properties projekta (pre nego da uradim publish) da li treba da promenim (pretpostavljam da treba) ovu opciju "Use Visual Studio..." u "Use local IIS..."?
SlikaVS ?
Ako treba šta treba da unesem u polje "Project URL"? Da li tu ide (npr) "localhost/PrvaApp" i da li treba dole da štikliram "Override app root URL"?
5. Jedna "zanimljiva" stvar se desila danas.

Pokrenula sam IIS (ako nešto znači kao administrator) i (malo je teško za objašnjavanje) ali ne mogu niakako da vidim IIS. Upaljen je i kad pređem mišem prikaže preview (Slika) ali kad kliknem uopšte ga nema prozor.
Iz control panel -> programs -> add/remove windows features (pričam sad napamet) sam sklonila IIS, pa zatim ponovo pokrenula, ali opet isto se dešava.

Za taj problem ne znam ni kako da tražim rešenje :-).

Hvala unapred na pomoći :)

[ S A J A @ 07.09.2014. 18:42 ] @
Da bi VS koristio IIS mora biti pokrenut sa Admin pravima. Najbolje da na prečici staviš da se uvek tako startuje jer bez toga neće moći da se edituje sadržaj sajta/web aplikacije.

Na Propertiesu od projekta, staviš da se koristi IIS i Project url: http://localhost/PrvaApp , override kod mene nije uključen.

Fajlove od sajta/web projekta možeš da staviš bilo gde na disku a idealno bi bilo unutar IIS foldera: c:\inetpub\wwwroot. Tako bi postojao folder c:\inetpub\wwwroot\PrvaApp.

U IIS podešavanjima treba da imaš samo jedan sajt (Default Web Site). Kad otvoriš onaj trouglić ispred, tu ćeš videti PrvaApp folder i desni klik na njega pa "Convert to Application".
Ukoliko je folder sa sajtom van IIS foldera, na primer unutar project foldera VS-a, onda u IIS-u ideš desni klik na Default Web Site pa "Add Application". Tu podesiš Alias:PrvaApp i Psysical path: folder gde se nalaze fajlovi.
U oba slučaja, u IIS podešavanjima ćeš videti sve svoje sajtove/web projekte kao "aplikacije" unutar Default Web Site-a.
Obrati pažnju da izabereš pravi folder gde su sajt fajlovi, obično VS otvara folder gde drži projekat a unutar njega folder sa sajtom (imaju isto ime). Ti biraš onaj drugi folder.

Pristup svim tim sajtovime je u brauzeru: http://localhost/PrvaApp.

To bi otprilike trebalo da je to. Moguće su i drugačije konfiguracije IIS-a ali ja sam ovako podesio. Posle kad želim da pošaljem sajt na "pravi internet" onda samo iskopiram fajlove u folder koji dobijem od hostinga (pristup je preko FTP-a). Kad radiš build onda prebaciš na Release. Inače, ako je neki bitniji projekat onda možeš da pretvaraš svoj kod u DLL fajlove i da ga obfuskuješ. To povećava sigurnost čisto da ti na hostingu ne stoje čitljivi fajlovi sa kodom. Samu opciju Publish u VS nikad nisam koristio, pretpostavljam da radi sve ovo što sam ja radio ručno.
[ Anchy_86 @ 07.09.2014. 22:56 ] @
Hvala na odgovoru :)

Veceras sam konacno uspela da pokrenem sve kak otreba :)

Zanima me samo jedna stvar.

Kad radim publish app na IIS da li treba da stoji debug ili release opcija?
[ S A J A @ 08.09.2014. 08:40 ] @
Ako radiš sajt za sebe, tj. još nije skroz gotov i treba ti radi testiranja, koristi Debug.
Ako je sajt gotov i hoćeš da ga uploaduješ na internet da ga koristi "narod" onda stavi Release.
[ Dejan Carić @ 08.09.2014. 12:38 ] @
Citat:
Anchy_86:
1. Kada radim publish tog projekta, da li treba biti namešteno na "build" ili "release"?

Treba da bude Release. Debug se koristi samo za debug-ovanje iz Visual Studia.

Debug, Release, itd. su build konfiguracije. Primetices da u Visual Studiu postoje Web.Debug.config i Web.Release.config fajlovi. Kada build-ujes aplikaciju, izvrsice se config transforamcije i krajnji web.config ce biti ono sto se nalazi u web.config fajlu + instrukcije iz web.release.config ili web.debug.config fajla (u zavisnosti koja je build konfiguracija selektovana). Ako uradis desni klik na web.debug.config ili web.release.config i kliknes na Preview Transform, videces kako izgleda krajnji web.config.



U praksi ces praviti custom build konfiguracije da bi promenila konekcione stringove, vrednosti unutar appSettings-a, itd. Pri razvoju web aplikacija, uglavnom se koriste test, staging i produkcioni server, a svaki od njih koristi drugacija podesavanja. Pa tako mozes imati web.config, web.test.config, web.staging.config, web.prod.config, itd.

Vise o config transformacijama mozes pronaci na sledecem linku: http://msdn.microsoft.com/en-us/library/dd465326(v=vs.110).aspx

Citat:
Anchy_86:
4. Kada odem na properties projekta (pre nego da uradim publish) da li treba da promenim (pretpostavljam da treba) ovu opciju "Use Visual Studio..." u "Use local IIS..."?


U koraku 2 i 3 kazes da si napravila nove foldere koji su nezavisni od tvog projekta. 'Use Visual Studio' i 'Use local IIS' se koriste za pokretanje tvoje aplikacije iz Visual Studia, a preko IIS ces pokruniti aplikaciju koja je nezavisna od tvog projekta.

'Use Visual Studio' koristi cuveni Cassini - staru verziju Microsoftovog web servera. Cassini treba izbegavati jer je dosta spor i nema mnoge mogucnosti kao sto su GZIP, kesiranje statickog sadrzaja, itd. Takodje, web.config fajlovi za Cassini i npr. IIS 7.5 se dosta razlikuju.

Pored lokalnog IIS-a, postoji i IIS Express koji je skoro isti kao i "pravi" IIS i ne zahteva admin privilegije. Ja ga koristim uvek za pokretanje i debug-ovanje aplikacija unutar Visual Studia.


Za Publish methodu koristis Web Deploy. Daleko jednostavniji (i manje restriktivniji) metod je File System, s obzirom da vec imas direktan pristup tim folderima.

Takodje, prilikom pravljenja Web Publish profila, dobro je da selektujes 'Precompile during publishing.
Vise informacija na ovom linku: http://msdn.microsoft.com/en-us/library/aa983464(v=vs.110).aspx


[Ovu poruku je menjao Dejan Carić dana 08.09.2014. u 23:51 GMT+1]
[ Anchy_86 @ 08.09.2014. 18:15 ] @
Puno hvala na odgovorima