« STIC:STIC I - Atelier technique 5 » : différence entre les versions

De EduTech Wiki
Aller à la navigation Aller à la recherche
Ligne 75 : Ligne 75 :
* Système de déploiment
* Système de déploiment
** Ligne de commande
** Ligne de commande
** À travers [[Git et GitHub]]
** À travers [[Git et Github]]


;Plateforme d’hébergement (différents plans tarifaires... y compris gratuit sous certaines conditions)
;Plateforme d’hébergement (différents plans tarifaires... y compris gratuit sous certaines conditions)

Version du 4 mai 2017 à 14:46

Cette page fait partie des cours STIC I et STIC II

Programme

Partie commune
  • 09:00 - 09:15 Discussion sur le déroulement du cours de vendredi (Présentation + BASES + Feedback mutuel sur STIC I + II)
  • 11:45 - 12:30 S'il reste du temps: démo utilisation d'un hébergeur externe
Projet 1
  • 09:15 - 10:00 Démo aspiration site web + Discussion sur la sécurité, mise à jour des portails
  • 10:00 - 11:45 Travail sur projet personnel (y compris la pause)
Projet 2
  • 09:15 - 10:00 Socket.io
  • 10:00 - 11:45 Coding with Node/Express/Scoket ou Travail sur projet personnel (y compris la pause

Activités P1

Sécurité

Comprendre les enjeux de sécurité d'un portail
  • SPAM, Attaques informatiques, DoS, ...
  • Mises à jour du code, Vulnérabilité des anciennes versions
Évaluer à quel point vous avez besoin d'un site dynamique vs. statique
  • Quelles fonctionnalités dynamiques sont absolument nécessaires (authentification, commentaires, forum, ...)
  • Quels mécanismes de contrôle/sécurité ont été prévus/mis en place

Aspiration d'un site

Possibilité d'aspirer (i.e. faire une copie statique) un site web dynamique
  • Utile pour :
    • Sites informationnels "finit" : toute l'information, ou presque, est déjà publiée (e.g. événement, site explicatif, ...)
    • Sites qui ne sont plus mis à jour : "figer" la dernière version existante et la transformer en site statique
    • Petits sites avec mise à jour pas fréquente : avoir une version dynamique en local (e.g. sur votre ordi) et aspirer les pages pour les publier ensuite chaque fois qu'il y a un changement (voir également les générateurs de site statiques plus bas)
Outils
  • Possibilité de le faire par ligne de commande
  • Logiciel (e.g. HTTrack)

Générateurs de sites statiques

Possibilité d'utiliser un "logiciel" qui génère, souvent à partir de simple fichiers, des sites statiques et fait l'upload du output HTML
  • Mode assez récente, donc système pas très simples/fiables pour l'instant
  • À utiliser plutôt pour des petits sites / blogs personnels
  • Nécessitent souvent l'installation (mais pas forcément la connaissance) d'un langage de programmation (e.g. Node.js, Python, PHP, Ruby, ...)
  • Utilisation de fichiers HTML ou Markdown pour créer les contenus
Quelques exemples (langage nécessaire)

Activité P2

Socket.io

Real-Time avec Socket.io
  • Comprendre la différence entre HTTP et WebSocket : one-way vs. duplex communication
  • WebSocket côté client et côté serveur : échange de message .on() et .emit()
  • Utiliser Socket.io avec Node.js et Express.js
Ressources

Déployer une application Node.js

Discussion
  • Différence entre hébergement standard (PHP/MySQL) et Node.js
  • À quoi faire attention lors du déploiement
  • Système de déploiment
Plateforme d’hébergement (différents plans tarifaires... y compris gratuit sous certaines conditions)
Alternative sur son propre serveur (disponible sur serveur TECFA mais pas encore testé sérieusement)