technologie web - part3

1,142 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,142
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

technologie web - part3

  1. 1. Technologie Web Apache, Tomcat Le 3 Décembre 2010
  2. 2. Plan 1. Apache 2. Tomcat
  3. 3. Plan  1. Apache 2. Tomcat
  4. 4. Présentation • Serveur web • Le serveur le plus utilisé dans le monde ! ( < 70% de part de marché) • Logiciel libre (sous licence Apache 2.0) • Avantages : • Performance • Portable (Linux, Unix, Windows, Mac) • Beaucoup de modules • Très actif
  5. 5. Présentation • Serveur web • Le serveur le plus utilisé dans le monde ! ( < 70% de part de marché) • Logiciel libre (sous licence Apache 2.0)
  6. 6. Les répertoires à connaître • Le répertoire des fichiers de configuration • sous linux : /etc/apache2/ • Le répertoire des logs (ErrorLogs / AccessLogs) • Sous linux : /var/log/apache2 • Le répertoire du site (DocumentRoot) • Sous linux : /var/www/html
  7. 7. Configuration • Le fichier de configuration • /etc/apache2/httpd.conf • Permet de spécifier • les modules à activer • le DocumentRoot (la racine du serveur) • L'emplacement des fichiers de logs • L'adresse mail de l'administrateur • ...
  8. 8. Les balises à connaître • Directory • Permet de spécifier une configuration propre à un répertoire du file system <Directory /var/www/html> Redirect permanent http://www.google.fr </Directory>
  9. 9. Les balises à connaître • Location • Permet de spécifier une configuration propre à un répertoire web <Location /admin> Order deny, allow Allow from 86.73.109.213 </Location>
  10. 10. Les balises à connaître • Alias • Permet de spécifier un répertoire du file system comme répertoire web Alias /pokemon /var/www/html/admin <Directory /var/www/html/admin> Order deny, allow Allow from 127.0.0.1 </Directory> <Location /admin> Order deny, allow Deny from all </Location>
  11. 11. Les balises à connaître • Virtualhost • Balise permettant d'héberger plusieurs nom de domaine sur une machine NameVirtualHost *:80 <Virtualhost *:80> ServerName thales DocumentRoot /var/www/html </Virtualhost> <Virtualhost *:80> ServerName bsimard.com DocumentRoot /var/www/bsimard <Directory /var/www/bsimard> Order allow,deny Allow from all </Directory> </Virtualhost>
  12. 12. Les modules • mod_rewrite : permet de faire de la réécriture d'url • mod_proxy & mod_proxy_http : permet de redirigé une requête entrante vers un autre serveur (via http) • Très utilisé avec les serveurs J2EE • mod_deflate : permet d'activer la compression gzip • mode_cache : pour activer le cache • http://httpd.apache.org/docs/2.2/mod/
  13. 13. Plan  1. Apache 2. Tomcat
  14. 14. Présentation • Le projet Tomcat a +10 ans • Implémentation Open Source des spécifications Servlet / JSP • Leader (>60%), communauté importante • Tomcat n’est pas un serveur d’application ! (pas d'EJB)
  15. 15. Qu'est qu'une webapp • Structure : • /WEB-INF/web.xml • /WEB-INF/classes/ • /WEB-INF/lib/ • *.html, *.jsp, etc. • Déployer dans tomcat/webapps
  16. 16. Structure de Tomcat Tomcat 5.5 Tomcat 6
  17. 17. Classloader • WEB-INF/classes • WEB-INF/lib • CATALINA_HOME/common/classes • CATALINA_HOME/common/lib • CATALINA_HOME/shared/classes • CATALINA_HOME/shared/lib
  18. 18. Configuration • server.xml • Paramétrage des ports • de shutdown (8005) • des connectors • Configuration du serveur (des connectors) • Écoute sur un port particulier • Activiation du gzip <Connector port="8181" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8143" compression="on" compressionMinSize="2048" compressableMimeType = "text/html,text/xml,text/css,application/javascript"/> • SSL
  19. 19. Configuration • tomcat-user.xml (Realm) • Pour laisser Tomcat gérer l'authentification • Paramétrage des utilisateurs • Paramétrages des rôles <tomcat-users> <role rolename="manager"/> <user username="tomcat" password="tomcat" roles="manager"/> </tomcat-users>
  20. 20. Exemple de web.xml pour l'authentification <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <security-constraint> <web-resource-collection> <web-resource-name>Timesheets</web-resource-name> <url-pattern>/timesheets/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>employee</role-name> </auth-constraint> </security-constraint> <security-role> <role-name>employee</role-name> </security-role> <login-config> <auth-method>BASIC</auth-method> </login-config> </web-app>
  21. 21. Authentification / Realms Realms : • JDBCRealm - Accesses authentication information stored in a relational database, accessed via a JDBC driver. • DataSourceRealm - Accesses authentication information stored in a relational database, accessed via a named JNDI JDBC DataSource. • JNDIRealm - Accesses authentication information stored in an LDAP based directory server, accessed via a JNDI provider. • UserDatabaseRealm - Accesses authentication information stored in an UserDatabase JNDI resource, which is typically backed by an XML document (conf/tomcat-users.xml). • MemoryRealm - Accesses authentication information stored in an in-memory object collection, which is initialized from an XML document (conf/tomcat-users.xml). • JAASRealm - Accesses authentication information through the Java Authentication & Authorization Service (JAAS) framework.

×