Tento postup si píšu hlavně pro sebe, kdybych náhodou někdy potřeboval přeinstalovat Windows 8, a nemusí přesně odpovídat vašim potřebám. Pracuji zde s W8 (nikoliv W8.1) protože můj PC se dodává s diskem na W8. Nicméně upgrade na W8.1 je zdarma pro každého, takže jsem toto vyzkoušel a body 12 a 13 jsem musel absolbovat pouze na Windows 8.1.
Nicméně to neznamená že někdo jiný nebo jindy je nebude muset absolbovat i v jiné verzi Windows než 8.1. Dále zde pracuji s Visual Studio Express 2012 for Web.
1) Nainstalujte W8 a po spuštění si nakonfigurujte účet. Mě to při instalaci nedalo možnost se přihlásit k Microsoft Account, takže jsem si vytvořil Local Account.
2) Přejděte do nastavení (já jsem to vytvořil v „metro“ nastavení) a změňte si účet na Microsoft Account. Budete potřeboval vaši email adresu a vaše heslo k ní.
3) Zkopírujte na disk C: všechny instalačky které budete chtít instalovat. Je to proto, že některé instalační procesy ukládají programy a knihovny na disk, ze kterého byly nainstalovány a tak tam můžete mít „zbytečné“ složky nebo soubory. Já také pro jistotu mažu písmeno jednotky ostatních disků než C: aby se tam skutečně nic nezapsalo.
4) Spusťte instalaci SQL Serveru 2012 with Advanced Services. Já jsem dal instalovat všechny součásti, včetně LocalDB která ve výchozím stavu se neinstaluje. Na stránce „Instance Configuration“ jsem zvolil Default instance, protože mám všude uvedené, že můj server se jmenuje MSSQLSERVER. Na stránce „Server Configuration“ jsem u SQL Server Reporting Services nastavil spouštění na Manual, protože je nepoužívám.
Na další stránce, Database Engine Configuration jsem nastavil Mixed Mode u Authentication Mode, a vyplnil jsem svoje heslo sa (System administrator) – tento účet slouží pouze pro SQL server. Na vedlejší záložce, „Data Directories“ jsem si nastavil cestu User database directory na C:\Documents\MSSQLSERVER a tato cesta se automaticky projeví i do User database log directory. Jedná se o cestu, kde budete mít uloženy vaše SQL Server databáze. Všechno ostatní jsem nechal na výchozích hodnotách a spustil instalaci. Můžete udělat reset PC ale já jsem ho neudělal.
5) Nainstalujte Visual Studio Express 2012 for Web. Můžete udělat reset PC, tentokrát jsem ho udělal.
6) Nainstalujte Visual Studio Update 4. Zvláště pro 2012 for Web je to důležité, aby vám fungovalo uzavírání tagů v ASPX editoru. Po instalaci to chce restart, tedy ho uděláme, Microsoft asi ví že to je důležité jinak by ho tam nedával.
7) Pokud se vám po otevření projektu ve VS12 for Web zobrazilo něco takového:

Znamená to že nemáte nainstalovanou plnou IIS. A protože chceme mít svůj web na plné IIS, dáme Ne a projekt se nenačte. Pokud se vám tedy zobrazilo toto okno, pokračujte krokem 8, jinak přejděte rovnou na krok 9.
8) V okně Funkce systému Windows, které spustíte přes Ovládací panely, jsem pro instalaci IIS zaškrtl Internetová informační služba->Webové služby->Funkce pro vývoj aplikací->Technologie ASP.NET 4.5 a tato součást je závislá na plně dalších součástech, které se mi automaticky také sami zaškrtli. Pak jsem ještě zaškrtl Webové služby->Společné funkce protokolu HTTP->Statický obsah, aby se mi servírovali obrázky a *.html stránky. Ve Společné funkce protokolu HTTP pak je dobré i zaškrtnout Chyby protokolu HTTP, abyste v případě chyby věděli proč se vám web nezobrazuje a nezobrazila se vám jen bílá stránka. Také je užitečné hned vedle zaškrtnout Přesměrování protokolu HTTP, protože určitě každý vývojář ASP.NET přesměruje stránku někdy pomocí .NETu. Dále Funkce pro vývoj aplikací->Inicializace aplikace, což vypadá že je důležité pro Global.asax. Pak ještě Internetová informační služba->Nástroje webové správy->Konzola pro správu služby IIS, abyste mohli tuto IIS konfigurovat přes GUI.
9) Otevřete si Konzolu pro správu služby IIS (mělo by stačit do vyhledávání Windows napsat „internet“ nebo „iis“) a změňte si u Default Web Site cestu k webovému projektu a restartujte tento web. Nyní restartujte také svůj PC.
10) Teď můžete načíst váš webový projekt ve VS. Pokud se vám stále nebude chtít načíst kvůli této chybě:

otevřete si VS jako administrator.
11) Nyní můžete zkusit otevřít ve svém webovém prohlížeči stránku 👻 RIP – tenhle server nepřežil ani vlastní hosting.. Nejspíš se vám ale zobrazí nějaká taková chyba: Cannot open database „sunamo.cz“ requested by the login. The login failed. Login failed for user ‚IIS APPPOOLDefaultAppPool‘. Tu vyřešíte tak že si otevřete SQL Server Management Studio, přihlásíte se pod Windows Authentication, v Object Exploreru napravo vyberete Security->Logins->New Login a do Login name zkopírujete IIS APPPOOLDefaultAppPool.
Důležité je také nastavit v tomto dialogu všechny Server Roles. Dále také samozřejmě musíte attachnout vaši databázi (soubor *.mdf a *_log.ldf) aby SQL Server měl z čeho načítat data. Po tomto je bezpodmínečně nutné udělat reset PC (nestačí udělat jen reset služby SQL Serveru) aby se vám v prohlížeči nezobrazovala chyba: „Cannot open database „database“ requested by the login. The login failed. Login failed for user ‚IIS APPPOOLDefaultAppPool‘.“
12) Pokud nejste na Windows 8, ale některé z dřívějších verzí Windows, musíte ještě zaregistrovat IIS. Dialog Přidat nebo odebrat funkce systému Windows totiž pouze zkopíruje soubory nutné pro běh IIS, ale nevykoná potřebné registrace v systému.
Proto, pokud máte 64bitový Windows, spusťte cmd (Win+R, napište cmd a enter – samozřejmě musíte být v účtu správce PC, jinak se vám příkazový řádek nespustí v admin modu) a zadejte tam následující příkaz: %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i. Pro 32 bitový OS zní příkaz následujícně: %windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i. Pokud soubor aspnet_regiis.exe nebude nalezen, upravte si verzi na vaši verzi .NET Frameworku.
13) Tento a následující bod by měl být potřebný pouze na Windows 8.1, ale pokud se vám zobrazuje chyba 500.19, proveďte tyto kroky i na jiném OS. Pokud se vám u webu zobrazuje chyba HTTP Error 500.19 – Internal Server Error, znamená to, že IIS nemá ani nejmenší práva k tomu aby mohla z vašeho adresáře s webem cokoliv získat. Nastavte tedy Full Control (mělo by stačit pouze čtení a možná execute ale já jsem pro jistotu nastavil Full Control) práva pro uživatele IIS_IUSRS, což je účet pro ApplicationPoolIdentity.
14) Pokud se vám stále nedaří zobrazit web, a to sice s chybou HTTP Error 401.3 – Unauthorized, znamená to že IIS se snaží prohlížet váš web pod účtem IUSR. Proto buď opakujte krok 12, pouze s účtem IUSR a nebo v konzoli pro správu IIS si otevřete váš účet, zde kliknete na Authentication, pak Anonymous Authentication, Edit a změňte z Specific user (pravděpodobně IUSR) na Application pool identity:

Vyzkoušel jsem si obě dvě možnosti, jednu, kterou jsem pak anuloval
15) V této chvíli nám by již měl web fungovat a můžeme se vrhnout na nastavení tohoto webu ve VS. Otevřete si tedy nastavení vašeho projektu a zde zvolte nalevo záložku Web. Zkontrolujte nastavení aby vypadalo jako zde u mě:

Já jsem zde ještě kliknul na Create Virtual Directory, ale to si myslím, že bude pouze pro IIS Express. Tak a už to funguje. ✅
Bohužel, nyní mi zase nefunguje možnost „Use Visual Studio Development Server“ nebo „Use Local IIS Web Server->Use IIS Express“ kvůli chybě “ Nelze načíst soubor nebo sestavení sunamo.cz nebo jeden z jejich závislých prvků. Byl učiněn pokus načíst program v nesprávném formátu. „.
Pokud se chcete této chybě vyhnout, nastavte si ve vlastnostech projektu Platform target na x86 a povolte 32bitový kód v DefaultAppPool – tedy AppPool’u který používáte pro servírování stránek ASP.NET. Nyní by vám měli fungovat všechny 4 způsoby – tedy „Use Visual Studio Development Server“, „Use Local IIS Web Server->Use IIS Express„, „Use Local IIS Web Server“ i spuštění pouze přes adresu 👻 RIP – tenhle server nepřežil ani vlastní hosting.ve prohlížeči bez Visual Studia.