Bilgisayarıma Windows 7 kurduktan sonra, Asp.net 1.1 versiyonundaki uygulamaları nihayet ISS 7 üzerinde çalıştırabildim.
1. İlk olarak 1.1 uygulamalarının 64 bit üzerinde 32 bit ile çalıştırılması gerekiyor. Bunun için şu scriptleri çalıştırmak yetiyor:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
%SYSTEMROOT%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe –i
Command Prompt’u “çalıştır”dan cmd yazmak yerine, “Run as administrator” seçeneği ile açmak gerekiyor. Yoksa bu scriplerin çalıştırılmasına izin verilmiyor.
2. C:\Windows\Microsoft.NET\Framework\v1.1.4322\CONFIG dizinindeki machine.config dosyasına, </configSections>’tan hemen once şu satırı ekledim:
<section name="system.webServer" type="System.Configuration.IgnoreSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
Tabi, burada da Win 7’nin güvenlik politikası yüzünden, bu dosyayı normal şekilde değiştiremedim. Bunun için de yine Notepad’I “Run as administrator”seçeneği ile açıp, oradan da bu dosyayı açıp, o şekilde değişiklikleri kaydedebildim.
3. Daha sonrasında, IIS Manager’de ISAPI and CGI Restrictions bölümünde Asp.net 1.1 versiyonunun “Allowed” olduğundan emin olmak gerekiyor.
4. Bunları yaptığımızda, tarayıcıdan localhost//.aspx olarak girilebiliyor. Fakat MS VS2003 ile debug edilemiyor.
5. Debug edilebilmesi için, ilk başta IIS Manager’da uygulamanın Authentication bölümünde şu ayarların yapılması gerekiyor:
a. Anonymous Authentication: Disabled
b. Windows Authentication: Enabled
Fakat bu noktada da başka bir sorunla karşılaştım. Authentication bölümüne girmeye çalıştığımda şu hatayı aldım. [Bu hatayı Asp.net 2.0 uygulamalarında vermiyor. Sadece 1.1’deki uygulamalar için veriyor]
There was an error while performing this operation.
Details:
Filename:
\\?\C:\Windows\system32\inetsrv\config\applicationHost.config
Error
Bu hatayı gidermek için yapılması gerekenler:
a. Asp.net 1.1 için Framework64 dizini yarattım. Command: md \windows\microsoft.net\framework64\v1.1.4322\config\
b. 32bit config dosyasını 64 bite kopyaladım. Command: copy \windows\microsoft.net\framework\v1.1.4322\config\machine.config \windows\microsoft.net\framework64\v1.1.4322\config\
Bunlar yapıldığında IIS Manager’da uygulama altındaki özelliklere hatasız girilebiliyor. Bundan sonra authentication ayarlarını yapabiliyoruz.
6. Fakat hala VS2003’teki “Unable to start debugging” hatasını almaya devam ettim. [AR’li Kullanıcım, “Debugger Users” grubunda olmasına rağmen] Burada, yukarıda bahsettiğim machine.config dosyasına gidip, processModel özelliklerine bakıp, orada hangi user’ın IIS Worker Process olarak kullanıldığına bakıp, bu kullanıcıyı da “Debugger Users” grubuna eklemek gerekiyor. [Eğer username=”machine” demişse, bu localdeki “ASPNET” kullanıcısıdır.]
7. Ama ne yazık ki, bunlar da yetmiyor, MS VS2003’ü de “Run as Administrator” seçeneği ile açmadan, Asp.Net 1.1 uygulaması debug edilmiyor.
[Yani nerede yetki problemi ile karşılaşıldı, bilin ki orada gizli bir “Run as Administrator” seçeneği var. Hakikaten bilgisayarın power düğmesine “Bas As Administrator” diye bir seçenek koysalar, çok daha iyi olurmuş]
Bu büyük sorunların yanında çok ufak bir detay kalan başka bir sorunum ise, IIS Manager’dan Default Document’i ayarlamak istediğimde, IIS’in uygulamanın web.config ’i üzerinde yazma yetkisi yok minvalinde bir hata aldım. Ama web.config’in özelliklerine baktığımda hangi kullanıcıya yetki vereceğimi bilemedim. Gözümü kararttım, Everyone’a bile tam yetki verdim, ama hala aynı hatayı veriyor.
Yukarıdaki hiçbir hatayı Asp.net 2.0 uygulaması vermedi bende.
1. İlk olarak 1.1 uygulamalarının 64 bit üzerinde 32 bit ile çalıştırılması gerekiyor. Bunun için şu scriptleri çalıştırmak yetiyor:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
%SYSTEMROOT%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe –i
Command Prompt’u “çalıştır”dan cmd yazmak yerine, “Run as administrator” seçeneği ile açmak gerekiyor. Yoksa bu scriplerin çalıştırılmasına izin verilmiyor.
2. C:\Windows\Microsoft.NET\Framework\v1.1.4322\CONFIG dizinindeki machine.config dosyasına, </configSections>’tan hemen once şu satırı ekledim:
<section name="system.webServer" type="System.Configuration.IgnoreSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
Tabi, burada da Win 7’nin güvenlik politikası yüzünden, bu dosyayı normal şekilde değiştiremedim. Bunun için de yine Notepad’I “Run as administrator”seçeneği ile açıp, oradan da bu dosyayı açıp, o şekilde değişiklikleri kaydedebildim.
3. Daha sonrasında, IIS Manager’de ISAPI and CGI Restrictions bölümünde Asp.net 1.1 versiyonunun “Allowed” olduğundan emin olmak gerekiyor.
4. Bunları yaptığımızda, tarayıcıdan localhost/
5. Debug edilebilmesi için, ilk başta IIS Manager’da uygulamanın Authentication bölümünde şu ayarların yapılması gerekiyor:
a. Anonymous Authentication: Disabled
b. Windows Authentication: Enabled
Fakat bu noktada da başka bir sorunla karşılaştım. Authentication bölümüne girmeye çalıştığımda şu hatayı aldım. [Bu hatayı Asp.net 2.0 uygulamalarında vermiyor. Sadece 1.1’deki uygulamalar için veriyor]
There was an error while performing this operation.
Details:
Filename:
\\?\C:\Windows\system32\inetsrv\config\applicationHost.config
Error
Bu hatayı gidermek için yapılması gerekenler:
a. Asp.net 1.1 için Framework64 dizini yarattım. Command: md \windows\microsoft.net\framework64\v1.1.4322\config\
b. 32bit config dosyasını 64 bite kopyaladım. Command: copy \windows\microsoft.net\framework\v1.1.4322\config\machine.config \windows\microsoft.net\framework64\v1.1.4322\config\
Bunlar yapıldığında IIS Manager’da uygulama altındaki özelliklere hatasız girilebiliyor. Bundan sonra authentication ayarlarını yapabiliyoruz.
6. Fakat hala VS2003’teki “Unable to start debugging” hatasını almaya devam ettim. [AR’li Kullanıcım, “Debugger Users” grubunda olmasına rağmen] Burada, yukarıda bahsettiğim machine.config dosyasına gidip, processModel özelliklerine bakıp, orada hangi user’ın IIS Worker Process olarak kullanıldığına bakıp, bu kullanıcıyı da “Debugger Users” grubuna eklemek gerekiyor. [Eğer username=”machine” demişse, bu localdeki “ASPNET” kullanıcısıdır.]
7. Ama ne yazık ki, bunlar da yetmiyor, MS VS2003’ü de “Run as Administrator” seçeneği ile açmadan, Asp.Net 1.1 uygulaması debug edilmiyor.
[Yani nerede yetki problemi ile karşılaşıldı, bilin ki orada gizli bir “Run as Administrator” seçeneği var. Hakikaten bilgisayarın power düğmesine “Bas As Administrator” diye bir seçenek koysalar, çok daha iyi olurmuş]
Bu büyük sorunların yanında çok ufak bir detay kalan başka bir sorunum ise, IIS Manager’dan Default Document’i ayarlamak istediğimde, IIS’in uygulamanın web.config ’i üzerinde yazma yetkisi yok minvalinde bir hata aldım. Ama web.config’in özelliklerine baktığımda hangi kullanıcıya yetki vereceğimi bilemedim. Gözümü kararttım, Everyone’a bile tam yetki verdim, ama hala aynı hatayı veriyor.
Yukarıdaki hiçbir hatayı Asp.net 2.0 uygulaması vermedi bende.
0 yorum:
Yorum Gönder