2011-11-02 62 views
4

設置主機名爲「server1」和「server2」的Apache虛擬主機後,如何通過我的iPhone(或任何移動設備)訪問它們,因爲無法在iOS或Android中修改/ etc/hosts文件?如何通過移動設備訪問Apache虛擬主機?

我的理解是,您必須通過名稱引用虛擬主機(假設您的物理服務器上只有1個IP地址),但無法將這些虛擬主機名映射到物理服務器上的單個IP地址。

我使用MAMP和我的Vonage路由器/ Apple機場不支持DNS在我的筆記本電腦上運行我的服務器。我需要設置本地DNS服務器嗎?有沒有簡單的方法可以在筆記本電腦上運行?謝謝。

回答

4

如果您沒有本地DNS,則不能使用。 作爲一種解決方法,您可以設置您的第一個VirtualHost來監聽80端口和第81端口(或8080或任何您想要的端口)上的第二個端口,並使用http://your.server.ip.addr:port訪問服務器。

2

您可以使用IP別名並配置基於IP的虛擬主機。但是,您必須通過移動設備上的IP訪問網站。但我想用@Renaud建議使用不同的端口更容易。

如果您想要,請在Mac OS X上使用ifconfig <interface> inet <ip> add添加IP別名。然後將Listen <ip><VirtualHost ip>指令添加到您的Apache配置。

1

下面的鏈接有一個很好的解決這個問題。

在設置好虛擬主機後,請仔細閱讀本節。

1. http://rocketmodule.com/blog/easy-and-free-way-test-local-sites-ipads-iphones-and-other-mobile-devices/

但不是路徑,你需要給本地域名。例如,「king.dev」在您的系統hosts.ics文件下

192.168.1.250(your system ip) king.dev 

鏈接。

現在,您可以通過您的手機在您的瀏覽器中輸入網址來訪問該網站。

192.168.1.250:4000[if you have set the port]/your_file.html 

當地的網站將顯示在移動設備

你也可以看看

http://www.tech-otaku.com/local-server/accessing-localhost-virtual-hosts-network-computer/

4

添加如下

的httpd-vhosts.conf

<VirtualHost *:8080> 
    ServerAdmin [email protected] 
    DocumentRoot "/opt/lampp/htdocs/api/www" 
    ErrorLog "logs/app_error" 
    CustomLog "logs/app_log" common 
</VirtualHost> 

的httpd.conf:

Listen 80 
Listen 8080 

然後在你的手機,你可以使用:

http://<your laptop address>:8080/ 
+0

Upvoted爲'聽8080'指令,只是我失蹤了! – Niavlys