2 つのクエリ文字列パラメーターを持つページの URL を書き換えようとしています。そして、これらのパラメータの値 (設定されているかどうか) に応じて、ページにさまざまなコンテンツを表示します。
example.com/fotograf.php?aid=10
example.com/fotograf.php?aid=10&fid=5
上記の URL は、書き換えられていない例です。私はそれらをそのようにしたいだけです
example.com/fotograf/10/
example.com/fotograf/10/5/
最初の URL は写真を含むアルバムへのリンクで、2 番目の URL はそのアルバム内の写真へのリンクです。
では.htaccess
、上記のクリーンな URL でアクセスできるようにしたいだけです。その後、スクリプトの先頭にある URL を確認し、クリーンでない場合は、作成した関数を使用してクリーンな URL にリダイレクトします (preg_match と preg_split で値を取得し、ヘッダー関数でリダイレクトします)。
これまでのところ、次のルールを試しました (アルバムを表示するには機能しませんでした)。
RewriteRule ^fotograf/([0-9-/]+)/([0-9]+)/?$ fotograf.php?aid=$1&fid=$2 [L]
次に、これ(常にアルバムにリダイレクトされます):
RewriteRule ^fotograf/([0-9-/]+)/?$ fotograf.php?aid=$1 [L]
最後に、これ (のような URL で写真を表示するのに役立ちましたexample.com/fotograf/10/?fid=5
):
RewriteCond %{QUERY_STRING} ^fid=(.*)$
RewriteRule ^fotograf/(.*)/$ fotograf.php?aid=$1&fid=%1
しかし、URL にクエスチョン マークやアンパサンドを表示したくありません。
どういうわけか、どれが設定されているかを確認し、それに応じてリダイレクトする必要がありますが、これを達成する方法がわかりません。
これどうやってするの?
前もって感謝します。