Maison  >  Questions et réponses  >  le corps du texte

RewriteRule divise le dernier caractère du paramètre

Ici j'essaie de réécrire les paramètres dans .htaccess et de rendre le dernier paramètre facultatif :

RewriteRule ^produktas/([0-9a-zA-Z_-]+)/?([0-9a-zA-Z_-]+) /produktas?slug=&var= [NC,L]

Donc si je saisis la variable http://site.lt/produktas/the-glass,那么我希望实际上得到 http://site.lt/produktas?slug= the-glass,但第二个参数 var 我希望为空。但是当我运行它时,我得到了第一个参数,我的 $_GET cela ressemble à ceci :

Array ( [slug] => the-glas [var] => s )

Si je ne saisis qu'un seul paramètre, comment puis-je remplir le premier paramètre et vider le deuxième paramètre : http://site.lt/produktas/the-glass ?

P粉081360775P粉081360775306 Il y a quelques jours441

répondre à tous(1)je répondrai

  • P粉541796322

    P粉5417963222024-01-11 15:11:06

    Votre modèle d'expression régulière est incorrect en raison de l'utilisation du quantificateur + 以及其间的可选 /.

    Vous pouvez utiliser cette règle :

    RewriteRule ^produktas/([\w-]+)(?:/([\w-]+))?/?$ produktas?slug=&var= [NC,L,QSA]
    

    répondre
    0
  • Annulerrépondre