0

これは再投稿だと確信していますが、知りたいことと同じ質問が見つかりません。基本的に、オフラインで作業している場合、サイト全体で使用するすべての URI はオフラインの場所 (例: 127.0.0.1/home.html) を参照しますが、サイトをアップロードするときは、これらの URI を同等のものに変更する必要があります。 com/home.html で、すべてのページを調べてこれらの参照を更新するか、PHP を使用して、アドレスが使用されているすべてのポイントに正しいアドレスを挿入する必要があります。現時点では、次のようなものを使用しています:

各ページの先頭:

<?php $offline = false; ?>

リンク:

<a href="<?php echo ($offline ? '127.0.0.1' : 'example.com'); ?>/home.html">Home</a>

しかし、これは、比較的単純であるべきことを達成するための貧弱な方法のように思えます。これらの参照を最新の状態に保つ標準的な方法は何ですか。どこでも相対リンクを使用することを検討しましたが、問題があることが判明し (たとえば、ビュー インクルードが正しく機能しない) base href、ホームページに設定しようとしましたが、他の問題が発生しました。

どんな提案でも大歓迎です。ありがとう。

4

4 に答える 4

1
$server=$_SERVER['SERVER_ADDR'];
// Local
if(strstr($server,'127.0.0'))
{
    define('ROOT_PATH','http://127.0.0.1/');
}
// Server
else
{
    define('ROOT_PATH','http://www.yoursite.com/');
}

このコードを php ファイルに入れて、すべてのページに含めます

その後:

<a href="<?php echo ROOT_PATH?>/home.html">Home</a>

この場合、ファイルをフォルダーに入れることもできます。次に例を示します。

define('ROOT_PATH','http://www.yoursite.com/mysite/');
于 2013-04-23T13:10:50.750 に答える
0

この問題を解決するために私が見つけた巧妙な方法は、HOSTS ファイルを修正して、example.com を 127.0.0.1 にポイントするようにすることです。これにより、どこでも example.com を参照できるようになりますが、開発が完了するまでは 127.0.0.1 にリダイレクトされます。 .

于 2013-04-28T11:34:18.227 に答える
0

別の方法は、相対パスを使用することです。

同じディレクトリ内のファイルには ./ を使用し、そのディレクトリより上のファイルには ../ を使用します。

于 2013-04-23T13:44:08.920 に答える