2011-04-21 106 views
1

總之,我試圖在.local主機名下瀏覽本地WiFi網絡上的Mac網站,這與主機的「計算機名稱」不同,並且認爲我錯過了一個設置步驟。在不同的主機名下查看局域網上的局域網

我在我的Macbook上安裝了nginx的本地安裝,正確的/etc/hostsnginx.conf條目爲多個站點提供服務,每個站點都有自己獨特的本地主機名。假設Macbook的網絡名稱是computername.local,並且我有兩個站點運行,一個在http://computername.local,另一個在http://servicename.local。我可以從本地機器訪問每個這些站點,但也希望能夠在同一個WiFi網絡上通過iPhone訪問http://servicename.local。我得到該URL的超時,但另一個工作得很好。

我在猜測必須做些什麼才能讓servicename.local在本地網絡上使用,這一點我已經省略了。需要做什麼?我需要使用Bonjour嗎?我會在哪裏添加這個新的本地主機名?

如果我也在/etc/hosts文件中定義了IP,但在同一網絡上的另一臺Mac可以訪問servicename.local下的這個文件,但我無法在iPhone上修改該文件。這不是越獄,我不是真的有興趣這樣做,只是爲了得到這個工作。

+0

您需要有一些DNS條目才能將http://servicename.local指向另一臺計算機的IP。不知道你在iPhone上如何做到這一點。 – Rasika 2011-04-21 00:57:08

+0

@Rasika:我想我可以在網絡上運行本地DNS服務器並在那裏定義DNS。我只是假設Bonjour的一個特性是在不同主機名下的網絡上公佈特定服務的可用性,所以我不必訴諸於本地名稱服務器。 – 2011-04-21 01:14:48

+0

我不確定Bonjour是如何工作的,但它可能只是宣傳一個主機名稱作爲機器名稱。這裏可能會有一些設置來改變這個名字。這裏沒有Mac來測試這個。 – Rasika 2011-04-21 03:01:42

回答

2

不知道它是否會幫助OP,但另一種做法 - 除了運行DNS服務器或越獄手機 - 是在Mac上運行HTTP代理,並配置iPhone使用代理。然後iPhone將選取Mac的本地主機文件條目,因爲它通過代理解析DNS查詢。我已經在博客中介紹瞭如何使用免費的Mac代理「SquidMan」在這裏執行此操作:http://egalo.com/99j