/ / htaccessはインデックスの末尾にスラッシュを付けて、または-hthtなしで書き換えます

Htaccessは後ろにスラッシュを付けたままでインデックスを書き直す - .htaccess

現在、.htaccessファイルでのインデックスURLの書き換えに問題があります。使用するかどうかはわかります。

RewriteRule ^profile/([^/]*)/?$ /profile.php?x=$1 [L]

www.example.com/profile/getまたはwww.example.com/profile/get/(末尾にスラッシュがある場合とない場合)を使用できます。

しかし、私はwww.example.com/getが欲しいです。

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

でも入れたら? $ itエラーの前に、どんな答えも歓迎します

回答:

回答№1は2

末尾のスラッシュをオプションにすると、無限ループが発生します。 [^/]* を含まないものと一致します /、つまりそれも一致します index.php?x=get

ルールを作ることでこれを回避できます 条件付きで適用、たとえば、要求URIをテストすることによって:

RewriteCond %{REQUEST_URI} !^/index.php.*
RewriteRule ^([^/]*)/?$ /index.php?x=$1 [L]

そうすれば、ルールはリクエストURIがで始まらない場合にのみ適用できます。 /index.php