2014-07-09 203 views
0

我有一個Nexus 7連接到我們的Wifi網絡。我無法對此設備進行根目錄,因此我無法編輯主機文件。它可以連接到我的臺式機上的XAMPP Web服務器。安裝HTTP服務器端代理或隧道服務器

在我的臺式計算機上,我有一臺VM,通過Vagrant進行配置,它具有專用網絡,因此只有我的臺式機(主機)才能訪問它。該虛擬機具有我的開發環境和在端口8080上運行的Web服務器。我只能使用主機名http://nick:8080/從我的桌面瀏覽器連接到此虛擬機。我必須編輯桌面上的主機文件才能將nick映射到VM IP(192.168.33.10)。由於虛擬機的Web服務器配置,因此http://192.168.33.10:8080不起作用。

所以我可以很容易地測試原生移動設備,我試圖找到一種隧道方式或代理從XAMPP(或另一個服務器)到虛擬機的請求。

我的N7可以訪問XAMPP,所以我想我可以將XAMPP設置爲可以與虛擬機通信的代理服務器或隧道服務器。

N7 - >代理/隧道服務器(XAMPP) - >虛擬機。

我需要Proxy/Tunnel服務器來維護標頭http://nick:8080,因爲http://192.168.33.10:8080不起作用。

我可以使用Apache配置來做到這一點,或者是否有另一個可以提供幫助的實用程序服務器?

感謝, 尼克

+0

你能提供你的'Vagrantfile'所以我們可以看到你如何配置虛擬機的網絡?你使用的是什麼虛擬化軟件,什麼是客戶操作系統?由於Vagrant具有一些非常好的網絡配置功能,因此您可能不需要代理服務器,尤其是Linux客戶端。但真的取決於細節... – Beel

+0

我想使用代理方法,而不是在公共網絡上打開虛擬機。 –

回答

0

您可能能夠達到你想要使用下面的一個根據是什麼你實際上是如何要求你的應用程序:

  1. 如果要映射http://nick:8080http://192.168.33.10:8080你可以嘗試在你的XAMPP Apache的配置添加此:

    ProxyRemote * http://192.168.33.10:8080/

  2. 如果您使用的是如http://nick:8080/mobile一個子目錄,然後嘗試:

    ProxyPass /mobile http://192.168.33.10:8080

    ProxyPassReverse /mobile http://192.168.33.10:8080

  3. 作爲替代方案,你可以嘗試使用重寫規則:

    RewriteRule ^/mobile(.*) http://192.168.33.10:8080/mobile$1 [P]

+0

嗨,我已經嘗試了httpd.conf文件中的第一步和第二步,重新啓動服務器,但我得到一個服務器錯誤:500.也許我需要把它們放在文件中的某個特定位置?謝謝。 –

+0

apache錯誤日誌說什麼?你有mod_proxy啓用?我應該提到這是使用代理指令的先決條件。 – Jameel