Hébergement de site web Damien Nouvel



Documents pareils
Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

L3 informatique TP n o 2 : Les applications réseau

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Dans l'épisode précédent

LAMP : une nouvelle infrastructure LAMP. Une architecture modulaire. Installation

Programmation Internet Cours 4

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données

Programmation Web. Madalina Croitoru IUT Montpellier

Présentation du relais HTTP Open Source Vulture. Arnaud Desmons Jérémie Jourdin

Module BD et sites WEB

Joomla! Création et administration d'un site web - Version numérique

SERVEUR HTTP Administration d apache

Application Web et J2EE

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

DOCUMENTATION ADMINISTRATEUR

Clauses d'hébergement web

Le serveur web Apache

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

CYBERGATE -TP-APACHE_2.DOC

Table des matières Hakim Benameurlaine 1

Préparation d un serveur Apache pour Zend Framework

Serveurs de noms Protocoles HTTP et FTP

ADF Reverse Proxy. Thierry DOSTES

Le serveur web Windows Home Server 2011

WebSSO, synchronisation et contrôle des accès via LDAP

Exemple : vous voulez tester votre site en local avant de l uploader via FTP chez votre hébergeur externe.

TP Service HTTP Serveur Apache Linux Debian

Formation en Logiciels Libres. Fiche d inscription

Architectures web/bases de données

Les serveurs WEBUne introduction

1 LE L S S ERV R EURS Si 5

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

BTS SIO SISR3 TP 1-I Le service Web [1] Le service Web [1]

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Le serveur HTTPd WASD. Jean-François Piéronne

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

UE5A Administration Réseaux LP SIRI

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Petite définition : Présentation :

4. SERVICES WEB REST 46

Hébergement de sites Web

CAHIER DES CHARGES DE REALISATION DE SITE INTERNET

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Apache en tant que reverse proxy

les techniques d'extraction, les formulaires et intégration dans un site WEB

Version en date du 01 avril 2010

Développement des Systèmes d Information

Réseaux et protocoles Damien Nouvel

Programmation Web. Introduction

PHP 5.4 Développez un site web dynamique et interactif

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

BES WEBDEVELOPER ACTIVITÉ RÔLE

Transfert de fichiers (ftp) avec dreamweaver cs5 hébergement et nom de domaine. MC Benveniste

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Adresse directe fichier : Adresse url spécifique sur laquelle le lien hypertext du Client doit être

Les solutions de paiement CyberMUT (Crédit Mutuel) et CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Internet. Web Sécurité Optimisation

CONDITIONS PARTICULIÈRES DES HÉBERGEMENTS MUTUALISES DE SITES INTERNET

Services sur réseaux. Trois services à la loupe. Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée

(structure des entêtes)

10. Base de données et Web. OlivierCuré

contact@nqicorp.com - Web :

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

FileMaker Server 13. Publication Web personnalisée avec XML

Mise en œuvre des serveurs d application

Serveur virtuel infogéré

Hébergement WeboCube. Un système performant et sécurisé. Hébergement géré par une équipe de techniciens

Serveurs mutualisés modulaires

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

table des matières Administration système

Vulnérabilités et sécurisation des applications Web

GUIDE UTILISATEUR PLESK. 1 Référence : IFR_MAK GPW_V02_Plexus_SharedHosting SOMMAIRE. Internet Fr SA. Immeuble Odyssée 2-12, chemin des Femmes

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Projet d'infrastructure Cloud

Architecture Orientée Service, JSON et API REST

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

1. La plate-forme LAMP

Les services usuels de l Internet

CONDITIONS PARTICULIERES D'HÉBERGEMENT WEB

Dossier d analyse et de comparaison 2012

FileMaker Server 13. Publication Web personnalisée avec PHP

Formation Website Watcher

SERVEUR WEB LINUX LAMP. Raymond RAZAFIMAMONJY Administration LINUX / UNIX Chapitre 15

Les outils de création de sites web

SQUID P r o x y L i b r e p o u r U n i x e t L i n u x

Glossaire. ( themanualpage.org) soumises à la licence GNU FDL.

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Ubuntu Linux Création, configuration et gestion d'un réseau local d'entreprise (3ième édition)

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

DRUPAL Réalisez des développements professionnels avec PHP (2ième édition)

contact@nqicorp.com - Web :

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Différentes installations sur un serveur Windows 2000 ou 2003.

Pratique et administration des systèmes

Transcription:

Hébergement de site web

Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27

Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27

L'hébergeur L'hébergeur sous-traite l'architecture technique DNS Emails Sites web Bases de données 4 / 27

L'hébergeur L'hébergeur peut s'occuper d'un site à divers niveaux Gestion du (des) domaine(s) (DNS) Entrées DNS à configurer Sous-domaines (par ex. «sous.domaine.fr») Gestion des emails du domaine Stockage des emails Redirection des emails Interfaces d'accès aux emails Protocoles de consultation (POP, IMAP) Mise à disposition d'un serveur Espace de stockage de fichiers Architecture technique (scripts, frameworks, logiciels) 5 / 27

L'hébergeur Coût selon le nombre de services / la durée, par ex. DNS (si le nom de domaine est disponible...) Généralement (.fr,.com,.net) 6 à 15 / an Stockage / services : Gandi : OVH : Amen : 8 Go : 14,35 / mois 1 Mo, 1 email : gratuit 25 Go, 10 emails, 1 base SQL : 2,4 / mois 250 Go, 1000 emails, 3 bases SQL : 12 / mois 2 Go, 10 email, 1 base SQL : 3,4 / mois 100 Go, 100 emails, 10 bases SQL : 6,8 / mois 1 To, 500 emails, 50 bases SQL : 13,4 / mois 6 / 27

L'hébergeur L'hébergeur s'engage à Trafic : une bande passante minimale Disponibilité : le site est «en ligne» 24/24 Fiabilité : peu de failles de sécurité (virus, etc.) Responsabilité de l'hébergeur (en France) Hébergeur Éditeur Retirer les informations illicites lorsqu'elles sont signalées Déclaration des fichiers de données personnelles (CNIL) Sur demande du juge, des données peuvent être communiquées (sécurité) Droit très différent selon les pays 7 / 27

L'hébergeur Types d'hébergement Dédié (dedicated) Une machine entière à disposition Plus rapide, plus disponible, plus de stockage Plus cher Mutualisé (mutualized) Une «portion» de machine à disposition Moins rapide, plus de risques de sécurité Beaucoup moins cher Colocation La machine appartient au client L'hébergeur fournit l'infrastructure, le réseau, la maintenance 8 / 27

Plan L'hébergeur Le serveur web Apache Sites dynamiques 9 / 27

Le serveur web Serveur, propose des services «orientés web» DNS : noms de domaine HTTP : pages web (HTML, XML, JSON, etc.) FTP : serveur de fichiers SSL : transactions cryptées Principe client / serveur Scripts serveur Serveur DNS HTTP FTP SSL Scripts client Client 10 / 27

Le serveur web Requête HTTP Méthode (GET, HEAD, POST, PUT, DELETE) URL (Uniform Ressource Locator) Domaine (et sous-domaine), par ex. «www.news.net» Fichier demandé, par ex. «/info/sport/rugby.html» Paramètres, par ex. «?liste=50&page=3» «?» : indique le début des paramètres «&» : sépare les différents paramètres «nom=valeur» : nom et valeur des paramètres Par ex. «www.news.net/info/sport/rugby.html?liste=50&page=3» Le client envoie la requête au serveur (grâce au DNS) Lors de sa réception, le serveur web traite la requête 11 / 27

Le serveur web Réponse du serveur Un serveur peut répondre pour plusieurs domaines Hôtes «virtuels» Permet l'hébergement mutualisé Retour après traitement de la requête «20x» : succès (200 : «ok») «30x» : ressource déplacée (301 : «moved») «40x» : erreur client (404 : «not found») «50x» : erreur serveur (500 : «internal error») Si trouvée, le serveur renvoie la ressource demandée Encodage selon le client (UTF8, ISO, etc.) La ressource peut nécessiter l'exécution d'un programme 12 / 27

Le serveur web Le serveur «interroge» le site concerné par la requête Site1 Serveur Client Serveur web Site2 13 / 27

Le serveur web Recherche de la ressource URL : chemin d'une ressource séparés par «/» Arborescence du site Arborescence des dossiers / fichiers sur le serveur Par défaut, correspondance automatique Par défaut, un dossier est «représenté» par «index.html» Possibilité de structurer différemment les dossiers / fichiers que par l'arborescence du site Inclusion de fichiers Mécanisme de «réécriture» d'url Utilisation de «CMS» pour décrire l'arborescence du site Importance des URL «propres» : moteur de recherche et/ou compréhension par l'utilisateur 14 / 27

Le serveur web Inclusion de fichiers Décrire un fichier comme «assemblage» de fichiers Permet de factoriser le code (évite la redondance) Page 1 Haut Contenu 1 Bas Page 2 Haut Contenu 2 Page 3 Haut Haut Bas Contenu 3 Bas Bas 15 / 27

Le serveur web Réécriture d'url Une URL peut-être compliquée selon les mécanismes du site Par ex. : http://www.news.net/articles/article.php?id=12&page=2 Nécessité de rendre l'url plus compréhensible Par ex. : http://www.news.net/articles/article-12-2 Utilisation des «expressions régulières» Description d'un langage comme algèbre Ensemble : alphabet Opérateurs : concaténation, union(+), fermeture (étoile de Kleene, *) Classes de caractères ([a-z], [0-9]...) Également utile pour traiter du Java, HTML, CSS, etc. Réécriture d'une partie de l'url «reconnue» Par ex. : ^article-([0-9]+)-([0-9]+)$ article.php?id=$1&rubrique=$2 16 / 27

Le serveur web Utilisation d'un CMS Plus d'accès au fichiers / dossiers direct Modification du site par le «backend» Le site est enregistré dans une base de données Les fonctionnalités sont définies selon le CMS choisi Arborescence du site Édition d'articles Ajout de forum Intégration de galeries d'images Intégration de calendrier Fonctions pour les sites de commerce... 17 / 27

Plan L'hébergeur Le serveur web Apache Sites dynamiques 18 / 27

Apache Apache HTTP serveur Logiciel libre (sous licence Apache) Créé par le NCSA (USA, 1995) De 60% à 70% des serveurs web Paramétré par fichiers de configuration Fonctionnalités phares Exécution de programmes (CGI, PHP, Python, Ruby, Perl...) Multithreads (un processus par requête) Réécriture d'url Gestion des droits d'accès (.htaccess) Format standard des logs (statistiques) 19 / 27

Apache Configuration d'apache Fichier principal «httpd.conf» Type du serveur Nom du serveur Racine des fichiers Inclusion d'autres fichiers de configuration Ajout de modules «au besoin» Scripts PHP (selon l'extension, PHP4 ou PHP5) Scripts Perl, Python, CGI, Ruby Réécriture d'url Serveurs virtuels Hébergement de plusieurs sites sur une machine 20 / 27

Apache Configuration d'apache (suite) Par liens symboliques Commandes : «ln -s» et «rm» Comme des «raccourcis» Activer / désactiver des modules / sites sites-enabled sites-available mods-enabled mods-available Site 1 php5 Site 2 rewrite Site 3 ssl Site 4 dav 21 / 27

Apache Exemple de configuration d'un site web <VirtualHost *> ServerName www.news.net DocumentRoot /var/www/vhosts/www.news.net <Location "/dynamicpages"> SetHandler python-program </Location> <Location "/templates"> Deny from all </Location> </VirtualHost> <VirtualHost *> ServerName news.net RedirectMatch 301 (.*) http://www.news.net$1 </VirtualHost> 22 / 27

Plan L'hébergeur Le serveur web Apache Sites dynamiques 23 / 27

Sites dynamiques Site statique Les pages web sont envoyés «telles quelles» Rapide, mais rigide Site dynamique Les pages sont «calculées» selon L'architecture du site (inclusions) La base de données L'utilisateur (authentification) Nécessite d'exécuter un programme (plus lent) Facilite la modification du contenu du site Grande majorité des sites 24 / 27

Sites dynamiques Dynamiser un site à l'aide de PHP PHP Langage d'interaction avec les bases de données (1994) «Personal Home Page» / «Php : Hypertex Processor» Langage impératif ( déclaratif, HTML / CSS) Syntaxe C (proche de Java, Perl...) Instructions terminées par «;» (sauts de lignes ne changent rien) Conditions, boucles, fonctions, Langage objet (PHP5) avec héritage Le code PHP est mélangé au code HTML Format pseudo-xml : «<?php script...?>» Remplacé dans le fichier HTML par ce qu'il affiche echo "Hello world"; Hello world 25 / 27

Sites dynamiques Dynamiser un site à l'aide de PHP (suite) Exemple d'exécution d'un fichier PHP page.php «serveur» <html> <body> <?php echo "Salut, on compte :"; for($i = 0, $i < 5 ; $i++){ echo "no $i" ; }?> </body> </html> page.php «client» <html> <body> Salut, on compte no 0 no 1 no 2 no 3 no 4 </body> </html> 26 / 27

Sites dynamiques Dynamiser un site à l'aide de PHP (suite) Fonction «include("nomfichier.php");» Inclusion à l'aide de PHP haut.php «serveur» menu.php «serveur» boites.php «serveur» bas.php «serveur» page.php «serveur» <html> <body> <?php include("haut.php");?> <?php include("menu.php");?> <p>mon contenu ici</p> <p>en HTML</p> <?php include("boites.php");?> <?php include("bas.php");?> </body> </html> Client 27 / 27