如何修改hosts文件?幾種修改方法讓你簡單方便快捷,hosts 是一個沒有擴展名的系統文件,可以用記事本等工具打開,其作用就是將一些常用的網址域名與其對應的IP地址建立一個關聯“數據庫”,當用戶在瀏覽器中輸入一個需要登錄的網址時,系統會首先自動從Hosts文件中尋找對應的IP地址,一旦找到,系統會立即打開對應網頁,如果沒有找到,則系統會再將網址提交DNS域名解析服務器進行IP地址的解析。
那么,hosts的具體作用是什么呢?概括起來,hosts的作用如下:加快域名解析、方便局域網用戶、屏蔽網站、順利連接系統。我們知道,有些河蟹軟件需要屏蔽掉他們的聯網驗證,其原理就是修改hosts文件。此外,還可以通過修改hosts來屏蔽掉一些視頻網站的廣告。
以下2T給大家介紹幾個修改修改hosts文件的方法,讓你簡單方便快捷的管理自己的hosts文件。
一、利用批處理進行修改(文章底部提供工具下載)
@ECHO OFF
mode con cols=58 lines=20
TITLE Hosts修改
color 2F
%Windir%System32FLTMC.exe >nul 2>&1 || (
ECHO CreateObject^("Shell.Application"^).ShellExecute "%~f0", "%PAR1st%", "", "runas", 1 >
"%TEMP%AdminRun.vbs"
ECHO CreateObject^("Scripting.filesystemobject"^).DeleteFile ^(WScript.ScriptFullName^) >>
"%TEMP%AdminRun.vbs"
%Windir%System32CSCRIPT.exe //Nologo "%TEMP%AdminRun.vbs"
Exit /b
)
:Menu
Cls
@ echo.
@ echo. 菜 單 選 項
@ echo.
@ echo. 打開Hosts文件 → 請輸入1
@ echo.
@ echo. 訪問網站 → 請輸入2
@ echo.
@ echo. 退出 → 請輸入3
@ echo.
set /p xj= 輸入數字,然后按回車:
if /i "%xj%"=="1" Goto Open
if /i "%xj%"=="2" Goto Visit
if /i "%xj%"=="3" Goto Exit
@ echo.
echo 選擇無效,請重新輸入
ping -n 2 127.1>nul
goto menu
:Open
@ echo.
ECHO hosts文件已經打開,您現在可以進行編輯,修改完成后別忘了保存!
notepad "%SystemRoot%system32driversetchosts"
goto menu
:Visit
mshta vbscript:createobject("wscript.shell").run("""iexplore""https://www.ypojie.com/",0)(window.close)
echo 已轉到歡迎光臨!
goto menu
:Exit
exit
復制以上批處理命令另存為Hosts.txt的記事本,然后把txt后綴改為cmd,Hosts.cmd 后運行按照提示操作修改即可,如下圖:
2、利用軟媒設置大師來一鍵修改Hosts文件(文章底部提供工具下載)
3、使用 Dism++來修改Hosts文件(文章底部提供工具下載)
5、直接找到C盤目錄下的Hosts文件進行修改
windows 系統 Hosts 文件路徑:C:WindowsSystem32driversetchosts
mac 系統 hosts 文件路徑:/etc/hosts
linux 系統的 hosts 文件一般也是在:/etc/hosts
Android 系統的 hosts 文件路徑:/system/etc/hosts (需要Root權限修改)
hosts 屬于系統文件,因此需要管理員權限才能對內容進行修改,直接以記事本打開填寫相應的內容即可
6、修改 hosts 后不生效怎么解決?
無論是手工修改 hosts 還是使用軟件來修改,很多人都會遇到修改 hosts 后不生效的情況。其實,這一般是由于 DNS 緩存的原因導致的。
因為系統為了加快用戶打開網站的速度,在首次訪問網站成功之后,會把 DNS 解析的結果暫時性地保存在本地緩存 (稱為 DNS 緩存) 里一小段時間,如果瀏覽器在“這段時間里”再次打開同一個網址,則會自動從 DNS 緩存里取出結果,而不會請求遠程的 DNS 服務器,也不會查詢 hosts 文件,從而節省時間提高打開速度。因此用戶會遇到有時修改了 hosts 文件但并不生效的情況,一般這時候我們想辦法清空 (刷新) 一下系統的 DNS 緩存即可。
7、怎樣清空 DNS 緩存?
在 Windows 下命令行執行:ipconfig /flushdns
在 macOS 下執行命令:sudo killall -HUP mDNSResponder
如果你使用 Chrome 瀏覽器,那么可以訪問:chrome://net-internals/#dns,然后點擊「Clear host cache」按鈕來清空瀏覽器里的 DNS 緩存。
如果這樣還不生效,那么只能再試試重啟電腦了,一般都OK了。要這樣還是不行,可能就是你的 hosts 寫錯了。