如何在 Mac OS X 下設置 host ?


可以試試我開發的Helm https://itunes.apple.com/cn/app/helm/id1099472017?l=zhls=1mt=12

視頻教程 Helm使用教程


剛才網上找到一個比較適合小白的辦法:
(1)點擊 Finder,在頂部菜單欄選擇「前往」-「前往文件夾」,粘入 「/private/etc/」 這個路徑(不帶引號)
(2)找到 「hosts」 文件,複製一份到桌面。用 Mac OS X 系統自帶的文本編輯器就能編輯 hosts 文件。添加好你要訪問(或者攔截)的網站相關 hosts 信息後保存,拖回 Finder 里的 /private/etc/ 文件夾下即可。拖回去的時候,Mac 會彈出報警說無法移動項目。點擊「認證」按鈕然後輸入電腦密碼即可。


編輯文件 /etc/hosts, 需要許可權. 比如:

$ sudo nano /etc/hosts


這樣子把,如果樓主對於指令不熟悉,就安裝一個chrome瀏覽器。
然後安裝一個hostadmin插件。
安裝好之後,到terminal裡面執行一個:sudo chmod og+w /etc/hosts
以後就可以直接在hostadmin裡面直接編輯hosts文件的內容了。


  • terminal 輸入 sudo vi /etc/hosts 回車,輸入系統密碼。修改完畢之後先按「esc」,再輸入「:wq」,回車,退出編輯。
  • 或者用textmate之類的編輯器,可以在「打開」窗口裡面直接瀏覽隱藏文件,編輯時批量複製、粘貼和刪除hosts比較方便。

對於不熟悉 terminal 的用戶來說,推薦一個軟體----gas mask,簡單快速。


先sudo -i臨時獲取管理員許可權,會提示你輸入密碼,就是啟動的密碼。
然後 vi /etc/hosts
前面的vi是編輯器,當然也可以換用其他的,例如上面的nano。
/etc/hosts 是hosts內容,編輯完保存就OK。


sudo vim /etc/hosts


題主如果是想切host查看網頁的話,推薦下我的小工具,尤其是對開發來說,非常方便!
因為我採用了一個沙箱機制,切host只對單個瀏覽器進程生效,不僅不需要考慮 dns 緩存, 實時生效而且還可以輕鬆實現兩個頁面,一個用host,一個不用host的對比效果~
下載地址: http://yun.baidu.com/s/1hrv34wc
項目地址:GitHub - liyangready/multiple-host: 虛擬host解決方案,輕鬆實現兩套host環境


Helm - hosts 文件管理:在 Mac App Store 上的內容


有個叫hosts的軟體


Hosts for mac http://pan.baidu.com/s/1mgxRl6S
.pkg 文件。可視化操作,十分簡單。


#!/bin/sh
cd /tmp
curl "https://raw.githubusercontent.com/racaljk/hosts/master/hosts" -o "googlehosts.temp"
cat googlehosts.temp &>&> hosts.temp
sudo cp hosts.temp /etc/hosts
rm *.temp
echo "Succed..."

存為xxxx.sh,chmod+x,執行,不謝


各位大神好
我重裝了一次電腦 目前的osx版本是 10.11.6 因為工作中經常要切換hosts 來切換環境進行驗證,現在碰到的問題是hosts 切換無效 就是 etc/hosts 已經寫入成功了 但是完全失效沒有作用,但是我今天切換wifi後 發現hosts有正常了,對比兩個wifi後發現了 dns的地址不同,所以我想是不是和系統先去走了DNS才走的hosts才會出現這種問題,目前苦惱中,麻煩有懂得大神解惑


推薦閱讀:

TAG:MacOSXSnowLeopard | OSXLeopard | OSXLion |