bugfix> apache > 投稿

こんにちは私は古いパスからhtacces経由でURLを書き換えるために達成しようとします

https://example.com/staticword-randomword/random-words/target.php

新しい道へ

https://example.com/new/target.php

このRewriteコマンドでこれを管理しようとしました:

RewriteRule ^staticword(.*)/(.*)/ new/$1 [L,R=301]

残念ながら、これらの書き換えコマンドはあまりよくないので、URLを書き換えます

https://example.com/new/-randomword/random-words/

誰かが解決策を教えてくれますか?

前もって感謝します。

回答 1 件
  • あなたの正規表現は正しくなく、 .*  本質的に貪欲です。

    次のリダイレクトルールを使用できます。

    RewriteEngine On
    RewriteRule ^staticword-[^/]*/[^/]*/([^/]+)/?$ /new/$1 [L,R=301,NC,NE]
    
    

    古いブラウザのキャッシュを回避するために、この変更のテストには必ず新しいブラウザを使用してください。

あなたの答え