2012-05-05 6 views
1

私は自宅からWebサイトをホストしています。私のシステムには、ポート80経由で転送され、var/wwwにindex.phpしかないWebサーバー(Ubuntu 11.04を実行中)と、それ以外のものを持つアプリケーションサーバー(Ubuntu 11.10を実行中)のみが設定されているWebサーバーWebレイヤーサーバーに話してください。PHP:hrefパスのlocalhostとドメイン名を取り除く

index.phpには、次のコード行があります。

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

これは、ローカルIPアドレス192.168.1.4を持つアプリケーション・サーバー上でVAR/WWWに配置されているabout.phpを呼び出すことになっているメニュー項目です。しかし、私はこのメニュー項目に関連付けられているボタンをクリックしたとき、それはhttp://localhost/192.168.1.4/about.phpにアクセスしようとすると、私はアドレスボックスに移動し、手動でアドレスボックスは、単に192.168を言うようhttp://localhost/一部を削除した場合、エラーメッセージ

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ファイルを取得してlocalhost/192.168.1.4/about.php、whatever.com/192.168.1.4/about.phpなどではなく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

関連する問題