SAE203

Projet de site web avec une base de données SQL.

CC-BY-SA-4.0 License

Stars
0
Committers
3

Introduction

Pour ce projet, nous devons réaliser individuellement un site présentant les données de notre choix. Ces données, contrairement à la SAÉ105, doivent être stockées dans une base de donnés MySQL pour être manipulable bien plus facilement qu'en JSON.

Il doit aussi avoir un "back office" permettant à un éventuel admin de gérer les données facilement sans avoir à utiliser PhpMyAdmin ou le shell.

Enfin, la base de données doit contenir deux tables reliées entre elles. Dans mon cas, il s'agit de SCP ainsi que des utilisateurs ayant écrit ou traduit les publications sur le site de http://fondationscp.wikidot.com/. Celles-ci doivent avoir au moins six (6) champs (sans compter l'ID) dans l'une, et trois (3) dans l'autre.

Hébergement

Le site est hébergé sur un VPS à l'adresse http://mmi23f23.sae203.ovh, sous un nom de domaine géré par l'établissement.

Le server web utilisé est The Apache HTTP Server Project, alias httpd.

La configuration du site est disponible dans le dossier apache/.

Déploiement

Pour build et compiler le site sur mon VPS, j'utilise gulp afin de minifier mon CSS avec cssnano, mon JS avec UglifyJS (⚠️ Attention aux astigmates et aux épileptiques photosensibles, le site d'UglifyJS est vieux et pas du tout accessible. ⚠️). Enfin, il me sert à minifier mon PHP/HTML et à déployer mon site avec sshpass et scp.

Instructions

Pour déployer vous-même mon projet sur votre propre VPS, suivez les étapes suivantes :

  • Vérifiez vos versions respectives de node, npm et npx :

    node --version
    
    npm --version
    
    npx --version
    

    Si l'un d'entre eux n'est pas installé, suivez les instructions ici.

  • Installez le cli de gulp

    npm install --global gulp-cli
    
  • Vérifiez si vous avez git d'installé

    git --version
    

    Sinon, suivez ces instructions ici.

  • Clonez le repo git

    git clone https://github.com/movva-gpu/SAE203.git
    
    cd SAE203
    
  • Installez les dépendances du projet

    npm install
    
  • Configurez une base de données MySql puis importez la

    mysql nomDeLaBase < sql/sae203Base.sql
    
  • Créez une configuration en suivant l'exemple de conf/example

  • Enfin, déployez le site

    gulp