Thanks to visit codestin.com
Credit goes to github.com

Skip to content

FIlox77250/Javelin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Javelin HTTP Server 🚀

Javelin est un serveur HTTP léger écrit en Java, développé par BRCloud.
Il permet d’héberger des fichiers statiques (HTML, CSS, JS) et propose des fonctionnalités avancées similaires à Apache/Nginx.


✨ Fonctionnalités

  • 📂 Serveur de fichiers statiques (www/)
  • ⚡ Logs Apache-like
  • 📄 Pages d’erreur personnalisées (403, 404, 500)
  • 📑 Directory listing
  • 🔄 Compression Gzip
  • 🔐 HTTPS (avec certificat auto-signé)
  • 🌍 Virtual Hosts (multi-sites)
  • 🛠️ Configuration externe (server.conf)
  • 📊 Monitoring JSON via /status
  • ⏱️ Exemple d’API REST via /api/time

🔧 Prérequis

Avant d’installer Javelin, assurez-vous d’avoir Java (JDK) installé.
Sur Debian/Ubuntu, installez Java 17 (LTS) avec :

sudo apt update
sudo apt install -y openjdk-21-jdk

Vérifiez ensuite la version :

java -version

Vous devriez voir quelque chose comme :

openjdk version "21.0.x" ...

🚀 Installation et exécution via script

Cloner le dépôt GitHub :

git clone https://github.com/Filox77250/Javelin.git
cd Javelin

Puis exécuter le script build.sh qui compile, installe et configure Javelin en service systemd.
Cela permet à Javelin de tourner en arrière-plan et de se relancer automatiquement au démarrage.

1. Rendre le script exécutable

chmod +x build.sh

2. Lancer l’installation

./build.sh

3. Vérifier le statut du service

systemctl status javelin

👉 Après ça, ton serveur est disponible sur http://localhost:8080.


📦 Télécharger sans git (ZIP auto-généré par GitHub)

curl -L -o javelin.zip https://github.com/Filox77250/Javelin/archive/refs/heads/main.zip
unzip javelin.zip
cd Javelin-main
chmod +x build.sh
./build.sh

📂 Structure du projet

Javelin/
├── Javelin.java        # Code source du serveur
├── server.conf         # Configuration (port, documentRoot, etc.)
├── www/                # Contenu statique
│   ├── index.html      # Page d’accueil (It works! style Apache2)
│   └── errors/         # Pages d’erreurs (403, 404, 500)
├── build.sh            # Script d’installation systemd

🔧 Gestion du service

Une fois installé, vous pouvez gérer Javelin avec :

sudo systemctl start javelin     # Démarrer
sudo systemctl stop javelin      # Arrêter
sudo systemctl restart javelin   # Redémarrer
journalctl -u javelin -f         # Logs en temps réel

👨‍💻 Auteur

Développé par Filox77250 (BRCloud)
👉 https://github.com/Filox77250/Javelin

About

Lightweight Java HTTP Server by BRCloud

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published