HelloZeroNet / HelloZeroNet/ZeroNet
Feature Request: Add URL rewriting to sites
- Langage dominant
- JavaScript
- Étoiles
- 18.8k
- Forks
- 2.3k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Allow each site to specify an URL rewriting scheme in `content.json`.
Proposed syntax:
```
"rewrite_rules": [
{ match: "files/.*", terminate: true },
{ match: "(.*)", replace: "index.html?url=\1", terminate: true },
]
```
The rewriting rules are:
* The URL which is checked to match against the regexp is the part after the site address, non including initial backslash.
* The matching rules are applied recursively until one with `terminate = true` is found. The first matched rule is the one which is applied at each step, each time starting from the first one.
* If the `replace` key is missing the returned string is not modified.
The final url should be then internally rendered and such page returned.
There should not be any html redirect.
If after 100 rewrites the url did not find a terminate condition, the site will log an error and the original request will be made.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par retracer la manière dont le content.json d’un site est chargé et dont les URL entrantes sont rendues en interne. Définissez le comportement de rewrite_rules à partir de la syntaxe proposée, notamment la correspondance récursive, le remplacement, la terminaison et la limite de 100 réécritures ; le travail est considéré comme terminé lorsque les pages réécrites sont rendues en interne sans redirection HTML et que les réécritures non terminantes consignent une erreur avant l’envoi de la requête d’origine.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Domaine
- backend
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100