Maison > Questions et réponses > le corps du texte
J'utilise PHP pour mon travail. Mon fichier htaccess est le suivant :
RewriteEngine On RewriteRule ^news/([a-zA-Z0-9_-]+)(|/)$ index.php?url=news&id= #Redirecciones #Redirect 301 / /index.php # Quickregister Rules ErrorDocument 404 /error.php
Maintenant, pour accéder aux actualités, le routage devrait ressembler à ceci :
http://localhost/news/3
Je souhaite modifier l'accès selon la méthode suivante :
http://localhost/news/mi-noticia-nueva http://localhost/news/mi-noticia-nueva/3
J'ai essayé les règles de réécriture suivantes sans succès :
RewriteRule ^news/(\d+/[\w-]+)$ index.php?url=news?id= [NC,L,QSA] RewriteRule ^news/([a-zA-Z]+)?$ index.php?url=news&name= [L] RewriteRule ^news/(.*)$ index.php?url=news&name= [L]
P粉2054755382024-01-17 18:15:01
Vous pouvez utiliser les règles suivantes :
RewriteRule ^(news)/(?:.*/)?(\d+)/?$ index.php?url=&id= [L,QSA,NC]
Cela prendra en charge les URI suivants :
/news/mi-noticia-nueva/3 /news/3
Le mode utilisé est :
^
: Commencez(news)
:匹配并分组news
/
:匹配/
(?:.*/)?
:匹配任何文本后面跟着/
. C'est un match facultatif (d+)
: Faites correspondre 1 ou plusieurs numéros dans le groupe de capture n°2 /?$
:在结尾处匹配可选的/