2012-05-05 57 views
1

我在家中托管一个网站。我的系统有两层:一个Web服务器(运行Ubuntu 11.04),通过端口80转发端口,并且只有var/www上的index.php和一个应用服务器(运行Ubuntu 11.10),它具有其他所有功能,并且仅设置为与Web层服务器交谈。PHP:摆脱href路径中的本地主机和域名

index.php具有以下代码行。

<li><a href="192.168.1.4/about.php">About</a></li> 

这是应该调用about.php位于其中具有本地IP地址192.168.1.4在应用服务器上VAR/WWW的菜单项。然而,当我点击这个菜单项相关的按钮,它会尝试访问http://localhost/192.168.1.4/about.php,如果我去的地址框和手动删除http://localhost/一部分,所以,在地址框中简单地说192.168提供错误消息

The requested URL /192.168.1.4/about.php was not found on this server. 

.1.4/about.php,然后应用程序服务器上的about.php页面出现。随后,当我点击与index.php相关的菜单按钮时,一切正常。它似乎开始加入http://localhost/到指定的地址,直到我手动删除它,然后它保持默认情况下。

当我尝试从另一台计算机访问我的网站时,出现真正的问题。我输入我的域名,说whatever.com,并显示index.php页面。但是,当我点击菜单按钮时,它会尝试访问http://whatever.com/192.168.8.1.4/about.php并给出错误消息。当我转到URL框并手动删除http://whatever.com/时,一切正常。但是我不希望用户必须这样做。另外,我正在通过家庭网络上的另一台计算机执行此操作,因此我不确定远程计算机会发生什么情况。

让index.php文件简单使用192.168.1.4/about.php而不是localhost/192.168.1.4/about.php,whatever.com/192.168.1.4/about.php等等的最好方法是什么

非常感谢提前,

彼得。

回答

3

您忘了在URL中添加方案。用途:

<li><a href="http://192.168.1.4/about.php">About</a></li> 

或:

<li><a href="//192.168.1.4/about.php">About</a></li> 
+0

愿景。这工作!非常感谢你! – OtagoHarbour

+0

很高兴帮助。不用谢 :) – VisioN

相关问题