2009-05-18 164 views
2

代碼:我怎樣才能阻止網站?

string path = @"C:\Windows\System32\drivers\etc\hosts"; 
StreamWriter sw = new StreamWriter(path, true); 
string sitetoblock = "\r\n127.0.0.1 http://" + textBox1.Text + 
    " 127.0.0.1 http://www." + textBox1.Text; 

sw.Write(sitetoblock); 
sw.Close(); 
MessageBox.Show(textBox1.Text + " blocked"); 

這是阻止網站代碼,....但它是不工作...有時它的工作原理..我怎麼能阻止網站?

告訴我什麼是正確的方式來阻止網站。

+0

被建議比一些防病毒軟件將紅旗這種行爲。許多病毒和間諜軟件應用程序都會做這種事情,比如說讓microsoft.com指向別的東西。 – BobbyShaftoe 2009-05-18 07:56:12

回答

7

首先。退出http://。

二。不要這樣做。

三。在你瞭解它的工作原理和原理之前,不要做任何事情。

5

首先,這不是阻止網站的有效方法,但是如果您真的想這樣做,請查看hosts文件的格式。

如果您想通過劫持DNS查找來阻止某個網站,則只需重定向主機名。

hosts文件要生成看起來是這樣的:

127.0.0.1 http://website/file

你想要的文件中看到的是這樣的:

127.0.0.1網站

+1

我一直在嘗試使用主機文件阻止幾個月的網站,並感謝這個評論現在終於可以正常工作。非常感謝。 – jukhamil 2015-08-22 22:20:28

0

'主機'文件將IP地址映射到主機名,所以它不需要協議位和部分。

您應該將「127.0.0.1主機名」寫入文件,例如阻止「badsite.com」你要補充:

127.0.0.1 badsite.com 
127.0.0.1 www.badsite.com 

可能有更好的方法來阻止網站雖然;-)

+0

127.0.0.1 badsite.com 127.0.0.1 www.badsite.com 但它不工作... – ankush 2009-05-18 08:06:59

+0

也許是一個緩存問題 - 關閉並重新打開您的瀏覽器。或者打開一個新的命令行並嘗試'ping www.badsite.com'並檢查它解析的IP地址。 – 2009-05-18 08:31:00

+0

如果有人輸入google.com,但它不是阻止..在瀏覽器谷歌打開google.co.in鏈接 – ankush 2009-05-18 08:58:24

1

許多間諜軟件/廣告軟件程序阻止訪問的主機文件。所以這樣做很可能會失敗。 Imho它會更好地阻止在防火牆的URL

相關問題