Maison > Questions et réponses > le corps du texte
Cela fonctionne bien :
https://example.com/2023/not-the-dinner-day
Utilisez ce qui suitRewiteRule
RewriteRule ^(\d{4})/not-the-dinner-day/?$ archive/reports//ntdd.php [NC,L]
Je souhaite obtenir cette nouvelle URL :
https://example.com/2023/not-the-dinner-day-photographs
De cette ancienne URL
https://example.com/archive/galleries/2023/20230204_ntdd/
J'ai essayé différentes méthodes, notamment :
RewriteEngine On RewriteRule ^(\d{4})/not-the-dinner-day-photographs/?$ archive/galleries//_ntdd/ [NC,L]
La correspondance avec le dernier dossier20230204_ntdd
semble me poser des problèmes avec le module de réécriture activé.
P粉1808446192023-09-12 00:18:54
Étant donné que la partie 0204
(MMJJ) n'existe pas dans l'URL demandée, vous devez la coder en dur. Heureusement, il n’y a qu’un seul MMDD par année.
Si vous avez accès à la configuration du serveur, vous pouvez implémenter un mappage un-à-un qui apparaît dans RewriteMap
- 然后可以在 .htaccess
.
Sinon, vous pouvez faire quelque chose comme ceci dans .htaccess
:
RewriteCond -0202 2019-(\d{4}) [OR] RewriteCond -0201 2020-(\d{4}) [OR] RewriteCond -0206 2021-(\d{4}) [OR] RewriteCond -0205 2022-(\d{4}) [OR] RewriteCond -0204 2023-(\d{4}) RewriteRule ^(\d{4})/not-the-dinner-day-photographs/?$ archive/galleries//%1_ntdd/index.php [NC,L]
La condition précédente contient un mappage un-à-un de AAAA à MMJJ. $1
est l'année à 4 chiffres capturée à partir du RewriteRule
是从
RewriteRule
pattern 捕获的 4 位数字年份,然后 CondPattern 从 < em>TestString,它是使用生成的替换字符串中的 %1
pattern
à partir du < em>TestString qui est généré à l'aide du < code>%1< /code> est récupéré par référence arrière.
Narration :Cependant, vos règles d'origine présentent certains problèmes potentiels de référencement :
. S'il est possible de recevoir deux URL en même temps (avec ou sans barre oblique finale), alors idéalement, vous devriez rediriger d'une URL à l'autre (quelle que soit la spécification).
Vous autorisez la correspondance insensible à la casse. Encore une fois, cela peut entraîner des problèmes de < /a>contenu en double