Compare commits
No commits in common. "b1cb9e95823e0501c3f03b398677306986d5023f" and "417b7b599897e02c66009025c17e6dcf69b60b44" have entirely different histories.
b1cb9e9582
...
417b7b5998
5 changed files with 155 additions and 2 deletions
137
README.md
Normal file
137
README.md
Normal file
|
|
@ -0,0 +1,137 @@
|
||||||
|
<div align="center">
|
||||||
|
|
||||||
|
# AEOS
|
||||||
|
|
||||||
|
### Un CMS léger, portable et sans base de données
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
**AEOS est un CMS libre, léger, multilingue et portable, conçu pour fonctionner simplement sur un hébergement PHP sans base de données.**
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
## 📖 À propos
|
||||||
|
|
||||||
|
AEOS est un système de gestion de contenu écrit en PHP dont les données et la configuration sont enregistrées dans des fichiers XML.
|
||||||
|
|
||||||
|
Le projet privilégie une installation simple, une structure lisible et une grande portabilité : un site AEOS peut être copié d’un hébergement à un autre sans migration de base de données ni procédure de déploiement complexe.
|
||||||
|
|
||||||
|
AEOS reste volontairement compact. Son objectif n’est pas de rivaliser avec les énormes écosystèmes des CMS généralistes, mais de fournir un moteur autonome, compréhensible et extensible pour créer et administrer un site sans dépendances superflues.
|
||||||
|
|
||||||
|
## ✨ Fonctionnalités
|
||||||
|
|
||||||
|
- gestion des pages et des contenus depuis une interface d’administration ;
|
||||||
|
- stockage des contenus et de la configuration au format XML ;
|
||||||
|
- fonctionnement sans serveur de base de données ;
|
||||||
|
- prise en charge de plusieurs langues avec langue par défaut et mécanisme de repli ;
|
||||||
|
- détection de la langue du navigateur ;
|
||||||
|
- thèmes, modules et plugins ;
|
||||||
|
- réécriture et routage des URL configurables ;
|
||||||
|
- mode maintenance et mode débogage ;
|
||||||
|
- corbeille pour les contenus supprimés ;
|
||||||
|
- filtrage centralisé des données entrantes ;
|
||||||
|
- en-têtes de sécurité et encodage UTF-8 ;
|
||||||
|
- moteur de recherche intégré aux contenus de type FAQ.
|
||||||
|
|
||||||
|
Certaines fonctions peuvent différer ou être absentes dans les anciennes versions conservées dans le dépôt.
|
||||||
|
|
||||||
|
## 🧭 Philosophie
|
||||||
|
|
||||||
|
AEOS repose sur quelques principes simples :
|
||||||
|
|
||||||
|
- **Portable** — les fichiers du site peuvent être déplacés sans exporter ni importer une base de données.
|
||||||
|
- **Léger** — le moteur limite les dépendances et conserve une architecture compacte.
|
||||||
|
- **Lisible** — le code, les fichiers de configuration et les contenus restent accessibles et compréhensibles.
|
||||||
|
- **Modulaire** — les fonctionnalités et la présentation sont séparées entre modules, plugins et thèmes.
|
||||||
|
- **Autonome** — AEOS est pensé pour rester exploitable sur des hébergements PHP classiques, y compris les offres les plus modestes.
|
||||||
|
|
||||||
|
## 🧰 Prérequis
|
||||||
|
|
||||||
|
- un serveur web compatible avec PHP ;
|
||||||
|
- PHP avec la prise en charge de XML ;
|
||||||
|
- les droits d’écriture nécessaires dans les répertoires de données utilisés par AEOS ;
|
||||||
|
- la réécriture d’URL du serveur web si cette fonction est activée.
|
||||||
|
|
||||||
|
Les versions exactes de PHP prises en charge peuvent varier selon la version d’AEOS utilisée.
|
||||||
|
|
||||||
|
## 🚀 Installation
|
||||||
|
|
||||||
|
1. Téléchargez la version souhaitée d’AEOS.
|
||||||
|
2. Copiez son contenu dans le répertoire public de votre hébergement.
|
||||||
|
3. Ouvrez le site dans un navigateur.
|
||||||
|
4. Suivez l’assistant présent dans le répertoire `install`.
|
||||||
|
5. Vérifiez les droits d’écriture demandés pendant l’installation.
|
||||||
|
|
||||||
|
Comme AEOS n’utilise pas de base de données, aucune création de base, importation SQL ou configuration d’un serveur MySQL/MariaDB n’est nécessaire.
|
||||||
|
|
||||||
|
## 🗂️ Structure du projet
|
||||||
|
|
||||||
|
```text
|
||||||
|
admin/ Interface d’administration
|
||||||
|
core/ Cœur et fonctionnement interne d’AEOS
|
||||||
|
data/ Configuration et contenus XML
|
||||||
|
install/ Assistant d’installation
|
||||||
|
lang/ Traductions générales
|
||||||
|
lib/ Bibliothèques du moteur
|
||||||
|
modules/ Types de contenus et fonctionnalités
|
||||||
|
plugins/ Extensions complémentaires
|
||||||
|
themes/ Présentation du site
|
||||||
|
```
|
||||||
|
|
||||||
|
Les modules et les thèmes disposent de leur propre configuration et peuvent inclure leurs fichiers d’édition, leurs ressources internes et leurs traductions.
|
||||||
|
|
||||||
|
## 🌍 Multilingue
|
||||||
|
|
||||||
|
AEOS peut sélectionner une langue à partir :
|
||||||
|
|
||||||
|
1. de la langue explicitement demandée ;
|
||||||
|
2. de la langue détectée dans le navigateur ;
|
||||||
|
3. de la langue par défaut configurée pour le site ;
|
||||||
|
4. d’une langue disponible utilisée comme solution de repli.
|
||||||
|
|
||||||
|
La configuration, les pages, les modules et les thèmes peuvent ainsi proposer leurs contenus dans plusieurs langues sans dupliquer l’ensemble du site.
|
||||||
|
|
||||||
|
## 🛡️ Sécurité
|
||||||
|
|
||||||
|
AEOS centralise le traitement des entrées publiques afin que les paramètres reçus ne soient pas employés directement par la logique applicative. Le moteur applique également des en-têtes de sécurité et peut restreindre l’accès direct à certains fichiers selon la configuration du serveur web.
|
||||||
|
|
||||||
|
La protection des fichiers XML dépend néanmoins du serveur utilisé. Une configuration adaptée doit être mise en place sur Apache, Nginx ou tout autre serveur afin d’empêcher leur consultation directe depuis le Web.
|
||||||
|
|
||||||
|
## 🕰️ Versions
|
||||||
|
|
||||||
|
Ce dépôt conserve plusieurs étapes du développement d’AEOS :
|
||||||
|
|
||||||
|
| Version | Rôle |
|
||||||
|
| --- | --- |
|
||||||
|
| `0.1a` | Première version alpha archivée |
|
||||||
|
| `0.11` | Version historique |
|
||||||
|
| `0.2` | Version historique |
|
||||||
|
| `0.3` | Version historique |
|
||||||
|
| `0.4` | Version historique |
|
||||||
|
| `0.5` | Version historique |
|
||||||
|
| `0.6` | Version actuelle |
|
||||||
|
|
||||||
|
Les anciennes versions sont publiées à des fins de conservation, de documentation et de suivi de l’évolution du projet. Elles ne sont pas nécessairement adaptées à une utilisation en production.
|
||||||
|
|
||||||
|
## 🧪 État du développement
|
||||||
|
|
||||||
|
La branche 0.6 constitue actuellement la base de travail stable du projet. Elle poursuit notamment l’amélioration du multilingue, de la recherche, de la portabilité et de la sécurité des fichiers de données.
|
||||||
|
|
||||||
|
La prochaine étape prévue est la version 0.7, avec un travail d’optimisation du moteur tout en préservant l’identité et la simplicité d’AEOS.
|
||||||
|
|
||||||
|
## 🤝 Contribution
|
||||||
|
|
||||||
|
Les rapports de bugs, propositions d’amélioration et contributions sont les bienvenus via les tickets et demandes de fusion du dépôt.
|
||||||
|
|
||||||
|
Lors d’une contribution, merci de respecter l’architecture existante, l’ordre de chargement du cœur et les mécanismes internes de sécurisation des entrées.
|
||||||
|
|
||||||
|
## ⚖️ Licence
|
||||||
|
|
||||||
|
AEOS est un logiciel libre distribué sous licence **GNU General Public License**.
|
||||||
|
|
||||||
|
Consultez le fichier `LICENSE` du dépôt pour connaître les conditions complètes de redistribution et de modification.
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
deny from all
|
|
||||||
9
data/corbeille/1.xml
Normal file
9
data/corbeille/1.xml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<page>
|
||||||
|
<id>1</id>
|
||||||
|
<nom>Accueil</nom>
|
||||||
|
<contenu>Bienvenue sur votre nouvelle page !</contenu>
|
||||||
|
<type>Simple</type>
|
||||||
|
<ordre>1</ordre>
|
||||||
|
<etat>1</etat>
|
||||||
|
</page>
|
||||||
9
data/corbeilles/1.xml
Normal file
9
data/corbeilles/1.xml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<page>
|
||||||
|
<id>1</id>
|
||||||
|
<nom>Accueil</nom>
|
||||||
|
<contenu>Bienvenue sur votre nouvelle page !</contenu>
|
||||||
|
<type>Simple</type>
|
||||||
|
<ordre>1</ordre>
|
||||||
|
<etat>1</etat>
|
||||||
|
</page>
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
deny from all
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue