2011-08-28 58 views
3

所以我在我的iphone應用程序中使用cocoahttpserver。我有網絡服務器工作。但現在我需要在外部瀏覽器訪問我創建的任何內容之前識別我的IP地址和端口號。我可以給我的iPhone一個域名嗎?

我希望我的用戶通過人類可讀的域名進行連接。即使是帶有端口的域名也是可以接受的。

我被告知理解Bonjour允許通過mDNS進行某種程度的域名解析。是否有可能使用Bonjour來解決這個問題?我一直在嘗試一段時間,但我遇到了無數的問題。我正在旋轉我的輪子嗎?看起來很奇怪臨時域名解析是可能的。任何文檔,教程或建議將不勝感激。謝謝。

編輯:編輯更清晰,我道歉。我只需要本地化的域名解析。由於顯而易見的原因,在全球範圍內進行這項工作將是愚蠢的。但我的應用程序的需求不會超出單個無線路由器。

編輯:不幸的是我的問題還沒有得到解答。這是另一個reference。也許我原來並沒有把我的問題弄清楚。如果任何人有關於清理問題的最佳實踐的建議,請通過評論告訴我。

編輯:這個問題似乎沒有價值。我真正的問題似乎在於Bonjour和mdns的cocoahttpserver實現。看來這個問題可以解決,但是這個問題相當困難和先進,這使得我很難說出這個問題。當我收到代表時,我會推薦此問題以供刪除。謝謝所有想要幫助的人。

+0

除非您在越獄設備上運行它,否則我不確定在應用程序中運行http服務器的可行性 - 當應用程序進入後臺時,服務器將無法使用很長時間。你想要做什麼? –

+0

有很多情況下,一個開放的應用程序W /一個Web服務器將是有益的,但沒有持久性是必要的。目前我正在玩w /創建一個http文件服務器。但是爲了讓非技術人員可以使用它,人類可讀的領域是必要的。我知道有太多的用戶在我通過基於IP地址的url時嚇跑了。 – decoy

回答

1

這聽起來像你正在尋找一個iPhone的動態DNS客戶端。一對夫婦快速谷歌搜索打開了這些:

iDynDNS:http://code.google.com/p/idyndns/

EasyDNS:http://gavcode.wordpress.com/2010/05/13/automatic-easydns-on-iphone/

列表動態DNS提供商:http://dnslookup.me/dynamic-dns/

+0

我已經研究過動態DNS。這是一個肯定的選擇。但對我所需要的一點點矯枉過正。唯一連接的用戶將通過相同的無線連接。這意味着我們永遠不必離開本地IP地址區域。更不用說在某些情況下,您的路由器需要設置爲將請求轉發到設備。 – decoy

1

技術上講,你可以;這裏是一個related video

這個想法是託管一個域名需要一個靜態IP地址。 靜態IP地址需要由ISP或動態ISP提供商分配。

只要你可以綁定一個特定的IP地址到你的iPhone,每種應用程序/虛擬主機都可以完成。

請注意,您的iPhone必須堅持一次以保持相同的IP地址。 例如,如果您在不同的WiFi地點之間移動,您的IP地址將會不斷變化,從而導致託管網站或服務無法訪問。

建議:算了吧:)

+0

那麼在這種情況下,只有那些在相同的WiFi將連接。所以如果我們可以做本地化的域名解析,那麼我會被設置。不幸的是,這種做法違背了DNS系統的概念。我希望mDNS能成爲這個系統的一個附件。但是當談到http和www協議時,我只是無法爲它找到一個簡潔的描述。 – decoy

0

如果它是可行的,你可以建立自己的域名服務器,把iPhone的IP地址在,並讓本地機器指的是DNS服務器第一。當然,我懷疑你沒有任何描述的本地服務器 - 這就是爲什麼你會使用你的iPhone作爲服務器;如果是這樣,你必須回到上面提到的動態DNS解決方案之一,或者在每臺本地機器上手動編輯/ etc/hosts文件。

+0

,除非您已將所有系統設置爲使用路由器作爲其DNS,並且路由器設置爲使用ISP的DNS服務器。一些DHCP配置可能會做到這一點。在這種情況下,你只需要編輯路由器上的主機... – ssube

+0

你似乎是對的。如果沒有專用的本地DNS服務器,我會陷入困境。我希望mDNS爲此付出了努力,即使它僅適用於支持Bonjour的設備,並且只能在本地網絡上使用。我現在面臨的困境是找到證明文件向我的團隊證明這一點。儘管我信任stackoverflow的用戶,但我的團隊仍然期望硬指向這個不是mDNS或Bonjour協議的一部分。而且我很難找到它。 :( – decoy

相關問題