Visual Studio’da proje yazarken web sitenizi IIS Express ile çalıştırdığınızda localhost haricinde hiçbir hostname veya IP adresi ile erişim izni vermez. Örneğin web sitenizi http://localhost:4444 yazarak açabiliyorken http://127.0.0.1:4444 yazarak açamazsınız. Tam da aynı sebeple, ağ üzerindeki başka bir bilgisayardan da bu siteyi görüntüleyemezsiniz. Örneğin yerel ağdaki IP adresiniz 192.168.1.2 ise ağınızdaki diğer bilgisayarlardan http://192.168.1.2:4444 yazarak görüntüleyemezsiniz.
Bu sorunu çözebilmek için yapılması gereken şey şudur:
- Visual Studio’yu kapatın. (Ya da görev yöneticisinden IIS Express Worker Process’i sonlandırın.)
- (PROJE_KLASÖRÜ)\.vs\config\applicationhost.config dosyasını açın.
- Projenizin ayarlarının olduğu yeri bulun. (proje adını aratarak bulabilirsiniz).
<site name="(PROJE_ADI)" id="(ID)">
<application path="/" applicationPool="(APP_POOL)">
<virtualDirectory path="/" physicalPath="(PROJE_KLASÖRÜ)" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:(PORT):localhost" />
</bindings>
</site>
- Projenin binding ayarlarının olduğu satırı bulun. (Port farklı olacaktır.)
<binding protocol="http" bindingInformation="*:4444:localhost" />
- Bu satırdaki localhost yazısını silin ve dosyayı kaydedin.
<binding protocol="http" bindingInformation="*:4444:" />
- Komut istemini yönetici olarak çalıştırın.
- Aşağıdaki komutu yazın ve çalıştırın. (Portu kendi projenize göre değiştirmelisiniz.)
netsh http add urlacl url=http://*:4444/ user=everyone
Artık sitenizi herhangi bir hostname veya ip ile açabilirsiniz.
süper eline sağlık, tecrubem yoktu ilk denemede oldu.
çok sağol hocam çok makbule geçti.
netsh http add urlacl url=http://*:4444/ user=everyone
Bu kodu aktif ettikten sonra nasıl kapatacağız
Merhaba. Aşağıdaki örnekteki gibi kapatabilirsiniz:
C:\Users\Sinan> netsh http add urlacl url=http://*:4444/ user=everyone
URL reservation successfully added
C:\Users\Sinan> netsh http delete urlacl url=http://*:4444/
URL reservation successfully deleted