Regexを使用して醜いURL(http://example.com/image.php?id=1&name=Dog)をきれいなURL(http://example.com/1/Dog)に書き直す手助けをしたいと思います。RewriteRule - UglyからPrettyへのURLが正しく解析されない変数
これと逆のバージョン、および必要なバージョンの他のバージョンについては、多くの質問があります。それにもかかわらず、それらは機能しません。
RewriteRule ^image.php\?id=(.*)&name=(.*)$ http://example.com/$1/$2? [R=301,L]
これは私が思いついた正規表現です。 (?)Regex101でそれをテストするhttps://regex101.com/r/uUlccx/2
は、それはこの1つの逆であるべき罰金のようだ:
RewriteRule ^([^/]*)/([^/]*)$ /image.php?id=$1&name=$2 [L]
しかし、それはないように思えます。誰でもRewriteRuleがどうあるべきか知っていますか?
編集:http://htaccess.mwl.be?share=47b41b23-1752-5a26-8432-196c95d1d669 htaccessのテスター
編集2:私は少しさらに得たが、それはまだ完全に動作していないようです。第二の可変は、書き換えに取り込まれていない:
RewriteCond %{QUERY_STRING} ^(.*&)?id=(.*)&name=(.*)$
RewriteRule ^image\.php$ http://example.com/%1/%2/? [R=301,L]