четвер, 25 жовтня 2012 р.

run asp.net on IIS with https from Visual studio 2012

Якщо вам заманулося поставити Visual studio 2012 і ви хочете створити web application та ще й розмістити його на IIS то це може видатися не таким і простим завданням.
За змовчуванням студія запускає вашу програму на IISExpress
Але якщо ви користуєтеся https то там ви не зможете дебажить вашу програму
Тож вам доведеться настроїти все і запускати з під повноцінного IIS.

Перш за все саму студію вам потрібно запускати з правами адміністратора, оскільки інакше вона не буде мати прав для взаємодії з IIS.
Переконайтеся також у тому, що ви не забули встановити власне IIS, бо у Windows7 Ultimate він не стає за замовчуванням.

  1. необхідно зареєструвати .NET Framework 4.5 на IIS 
Для цього виконайте команду:
Run C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i 

     2  створити ключ шифрування ssl
Відкрийте IIS Manager і на головному елементі дерева ліворуч виберіть назву вашої машини, а на середній панелі FiaturesList слід перейти у Server sertificates.
Потім праворуч тицьнути Create Self-Signed Certificate Вибрати якусь назву і зберегти його
    3  у дереві ліворуч вибрати ваш дефолтовий сайт Справа натиснути Bindings і додати https з вашим сертифікатом з кроку 2
 Після цього студію зможе взаємодіяти з вашим IIS і піднімати на ньому вашу програму.

Не забуваємо дати доступ користувачу IIS APPPOOL\DefaultAppPool на вашу базу даних або зробити імперсоналізацію :)

PS
Якщо раптом якийсь дідько перебіжить дорогу і сайт не захоче запускатися як .NET Framework 4 (версія 4.5 теж запускається як 4.0) то потрібно зайти в ApplicationPool і встановити правильну версію фреймворка.

 PPS
Якщо перебігав цілий табун чортів і вам IIS вивалить замість сторінки повідомлення з поясненням що ви не можете міняти розділ хххх у вебконфігу тому що він залочений у системному веб конфігу (зокрема у ApplicationHost.config )...
то у вас буде цікава гра з 64-ю віндою :)

Файл буде лежати тут C:\Windows\System32\inetsrv\config
проте як тільки ви спробуєте улуюбленим notepad++ зайти туди і відредагувати - ви його не зможете знайти. Так відбувається тому що вінда непомітно так підсовує 32х розрядним програмам "C:\Windows\SysWOW64" замість "C:\Windows\System32"
Але ви на ці її розводи не ведіться. Візьміть той файлик, зкопіюйте руками на десктоп, відредагуйте улюленим notepad++ і залийте поверху назад. :)

Немає коментарів:

Дописати коментар