0

のようなデータベースからイベントを取得していますが/event-detail.php?id=1、代わりに /Event-Name/ のようにしたいのです。どうすればこれを達成できますか? mod Apache の書き換えについては少し知っていますが、ここで機能するかどうかを知るには十分ではありません。それとも私はこれに間違って近づいていますか?代わりに名前付きのアイテムをプルする必要がありますか? /event-detail.php?name=Event Name? はるかに簡単に思えるかもしれませんが、私は本当にそのようにしたくありません。

4

2 に答える 2

2

そうでなければ、それを機能させるのは非常に難しいでしょう(私は思います)。

これを試してください(これをサーバーのconfまたは.htaccessに書き込んでください):

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteRule ^(.*)$ event-detail.php?name=$1 [QSA,L] 
</IfModule>

これにより、URL が書き換えられ、既存のファイルとディレクトリ以外のすべてがevent-detail.phpスクリプトに転送されます。

/myShowEvent1ユーザー呼び出しが次のように書き換えられるevent-detail.php?name=myShowEvent1場合、またはユーザー呼び出しが呼び出し/event/25366273と同じevent-detail.php?name=event/25366273である場合 (つまり、サーバーに存在しない場合) は、もう少し情報があります。

于 2012-06-02T05:13:20.353 に答える
0

ただし、ページにあるすべてのリンクは、相対ではなく絶対でなければならないことを忘れないでください。

自分で試してみてください。私が話していることがわかります。

于 2012-06-02T11:13:34.297 に答える