Skip to content

documentation du Web Public

de-Pret-Mikael edited this page May 28, 2021 · 15 revisions

Organisation de la configuration du Web public

Les fichiers de configuration du web se trouvent ici: https://github.com/cyrilGrandjean/admin2/tree/dev/web Ils sont organisés comme suit:

Le dossier web contient deux dossiers un pour le site vitrine woodytoys contenant un fichier index.html et l'autre pour le site dynamique b2b woodytoys contenant un index.php. Dans le cas du site dynamique, il fait appel à une base de données MySQL qui est organisée comme suit:

Organisation configuration apache

Nous avons modifié 2 fichiers de la configuration apache de base: le fichier apache2.conf et nous avons également rajouté un fichier pour la configuration des virtual hosts: sites_woody.conf.

Dans la configuration par défaut Apache, on retrouve également: ports.conf est le fichier de configuration qui définit quels sont les ports à l'écoute. Ceux-ci sont modifiables (dans notre cas ils ne l'ont pas été).
Les fichiers de configuration contenus dans les dossiers mods-enabled/, conf-enabled and sites-enabled/ contiennent les configurations qui gèrent les modules.
Dans notre cas, nous avons modifié le dossier /sites-available. Dans ce dossier se trouve une configuration par défaut (000-default.conf) que nous avons désactivé à l'aide de la commande: a2dissite 000-default.conf. Ensuite, nous avons créé un fichier de configuration sites_woody.conf que nous avons activé avec la commande: a2ensite sites_woody.conf.

Organisation du contenu web(/var/www/html)

Pour le contenu web, nous avons créé

/var/html/ |-- b2b |-- index.php |-- site_statique |-- index.html

Maintenance

Procédure pour mettre à jour le(s) logiciel(s) serveur

Mise à jour d’Apache

  • Ouvrir le terminal
  • taper la commande "sudo apt update" pour récupérer l'index du package
  • taper la commande sudo apt install apache2
  • si apache2 avait déjà été installé, il essayera de se mettre à jour vers la dernière version. Si vous ne voulez pas les nouveaux packages. La commande "apt --only-upgrade install apache2" ne mettra à jour que les packages qui étaient déjà installés

Mise à jour de Mysql

  • Ouvrir le terminal
  • taper la commande "sudo apt update" pour récupérer l'index du package
  • taper la commande sudo apt install mysql-server
  • si mysql-server avait déjà été installé, il essayera de se mettre à jour vers la dernière version. Si vous ne voulez pas les nouveaux packages. La commandes "apt --only-upgrade install mysql-server" ne mettra à jour que les packages qui étaient déjà installés

Procédure en cas d'ajout d'une nouvelle page web

Apache

  • Ajout d'un dossier dans admin2/web contenant un fichier "index" et son extension (php, html, ...) qui contient le site.

  • Dans le fichier admin2/web/Dockerfile rajouter une copie du site dans le fichier www d'apache

    • COPY ./"nom du site"/ /var/www/apache2/site-available
  • mettre en place le VirtualHost pour le site:

           <VirtualHost *:80>
                 ServerAdmin "adresse mail de l'admin"
                 ServerName "nom du serveur"
                 ServerAlias "nom du serveur plus www devant"
                 DocumentRoot /var/www/html/"nom du site"
                 ErrorLog ${APACHE_LOG_DIR}/error.log
                 CustomLog ${APACHE_LOG_DIR}/access.log combined
                 <Directory /var/www/html/"nom du site">
                         Options -Indexes +FollowSymLinks
                         AllowOverride All
                 </Directory>
           </VirtualHost>```
    

DNS

  • ajout du virtual host dans le SOA interne si on veut que le site soit interne ou externe si on veut que le site soit externe

Externe

@       IN      NS      ns.l2-4.ephec-ti.be.
"nom du domaine" IN A "addresse IP"

Interne

@       IN      NS      ns.local.
"nom du domaine" IN A "addresse IP"

Troubleshooting

Procédure et collecte d'information

Si le site viendrait à avoir des dysfonctionnements les éléments pour le débugger seraient:

  • Logs: /var/log/apache2/access.log
  • Logs: /var/log/apache2/error.log

Procédure de test:

Utiliser curl qui est un client utilisable en ligne de commande et qui permet de pouvoir envoyer des requêtes et ainsi obtenir une réponse

  • curl "nom du domaine ou de l'ip du site à tester"

Erreur fréquentes

  • impossible de trouver/atteindre une ressource demandée par le virtual hosting
    • Pour réparer cela il faut configurer un fichier .htaccess pour pouvoir modifier les paramètres
  • oublier d'ouvrir les ports liés au port 80 et port 443

Clone this wiki locally