Skip to content

Etat des configurations du service WEB

HaAymar edited this page Aug 27, 2022 · 13 revisions

Etat de fonctionnement

Toutes les fonctionnalités ont été configurées (cfr Lien vers l'analyse configuration Web).

Voici les fonctionnalités qui fonctionnent :

  • Redirection de la zone www et b2b dans le fichier de zone vers le serveur web
  • Création d'un container docker pour héberger le serveur Web
  • Installation d'Apache2 et le module PHP
  • Configuration d'apache2
  • Installation de MariaDB
  • Les sites www et b2b sont disponible et sécurisé via l'https

Configuration

  • Au niveau du fichier de zone on à du rajouter les lignes suivantes

www     IN      A       51.68.226.111
b2b     IN      A       51.68.226.111
  • Installation d'apache

Lors de la création du conteneur, vérifier si apache et php sont bien installés et les services sont actif

sudo apt install apache2 
sudo apt install php php-mysql libapache2-mod-php

apache2ctl start
  • Installation de Mysql

sudo apt install mariadb
mysql -u root -p

Pour la mise en place de la base de données on peut se connecter à mysql et éxecuter les lignes de code dans le fichier db.sql

  • Fichiers de configuration du site dans le dossier /etc/apache2/sites-availables:

<VirtualHost *:80>
        ServerAdmin aymar@students.ephec.be
        ServerName www.l1-4.ephec-ti.be
        DocumentRoot /var/www/html

    <Directory />
        Options FollowSymLinks
        AllowOverride all
    </Directory>

    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Order allow,deny
        allow from all
    </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =www.l1-4.ephec-ti.be
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

b2b.conf

<VirtualHost *:80>
        #information sur le serveur et le nom de domaine
        ServerAdmin aymar@students.ephec.be
        ServerName b2b.l1-4.ephec-ti.be
        DocumentRoot /var/www/B2B/

    <Directory />
        Options FollowSymLinks
        AllowOverride all
    </Directory>

    <Directory /var/www/B2B/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Order allow,deny
        allow from all
        AddType application/x-httpd-php .php
    </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =b2b.l1-4.ephec-ti.be
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
  • Code PHP et HTML du site dans le dossier /var/www/B2B et /var/www/html:

  1. /html/index.html

On a placer le code qui constitue le site vitrine www

<!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>WoodyToys</title>
    </head>
    <body>
        <h1>Nous vous souhaitons le bienvenue sur notre site WoodyToys L1-4</h1>
    </body>
</html>
  1. /B2B/index.php

On a placer le code qui constitue le site statique

<html>

<head>
</head>

<body>
    <h1>Nous vous souhaitons le bienvenue sur notre site " WoodyToys l1-4 !</h1>
    <?php
        echo "<h3> Nous vous presentons notre catalogue de jouet </h3>";
    ?>
    <?php
        //getenv('MYSQL_DBHOST') ? $db_host=getenv('MYSQL_DBHOST') : $db_host="localhost";
        //getenv('MYSQL_DBPORT') ? $db_port=getenv('MYSQL_DBPORT') : $db_port="3306";
        //getenv('MYSQL_DBUSER') ? $db_user=getenv('MYSQL_DBUSER') : $db_user="WoodyToy";
        //getenv('MYSQL_DBPASS') ? $db_pass=getenv('MYSQL_DBPASS') : $db_pass="";
        //getenv('MYSQL_DBNAME') ? $db_name=getenv('MYSQL_DBNAME') : $db_name="db_woody";
        //echo "Bienvenue";
        $db_host  = "127.0.0.1";
        $db_user = "WoodyToy";
        $db_name = "db_woody";
        $db_pass = "HAKIZ";

        //$mysqli = mysqli_connect($db_host , $db_user , $db_pass , $db_name );
        $mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name);
        // Check connection
        if (mysqli_connect_errno()){
                echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }
        if ($mysqli -> connect_error) {
        echo "Refused to connect to MySQL: " . $mysqli -> connect_error;
        exit();
        }
        $query = "SELECT * FROM woody;";
       // mysqli_query($mysqli, $query) or die('Error querying database.');
        $result = mysqli_query($mysqli, $query);

        while ($row = mysqli_fetch_array($result)) {
            echo $row['Name'] . ': '  . $row['Price'] . ' <br />';
        }
        //mysqli_close($mysqli);
    ?>

</body>
</html>

Sources:

Clone this wiki locally