0

index.php に何かを書き換えて静的 URL を作成する .htaccess 設定があります。例えば:

RewriteRule ^(.*)$ index.php?/$1 [L]

url: www.domain.com/home/article/news/

この書き換えに問題はなく、 を使用して URL を処理でき$_SERVER['REQUEST_URI']ます。しかし、リンクに問題があります。例えば:

<a href="home/article/recent">Recent News</a>

このリンクをクリックするとwww.domain.com/home/article/news/home/article/recent、href 値が で始まっていないため、URL は になります"/"

リンクを php または .htaccess に書き直す方法はありますか? では、href を入力するのを忘れると"/"、現在の URL には従わないのでしょうか? ありがとう。

4

1 に答える 1

0

.htaccess は簡単には役に立ちません。新しいパスを追加すると、エラーが発生しやすくなり、保守が難しくなると思います。そのルートに行きたい場合は、ユーザーがそれらの奇妙なパスを見ないように、301 を実行する必要があります。残念ながら、これによりリダイレクトの待ち時間が長くなります。

PHP の場合、出力の生成方法によって異なります。可能だと思いますが、リンクをそのままHTMLとして出力するのではなく、リンクを生成する必要があり、IMOが醜くなります。

確かに、はるかに手間がかからず、絶対パスを単純に使用することがすぐに習慣になります。

于 2013-03-27T02:42:07.070 に答える