web:vm-install

Ceci est une ancienne révision du document !


Installation VM

Tout savoir sur la fameuse erreur du gestionnaire de paquets apt :

Could not get lock /var/lib/dpkg/lock Error
Voir dpkg lock error

Démarrer votre VM depuis https://servers1.sts-sio-caen.info/

Les informations de connexion au serveur sont données sur le drive.

Démarrer votre VM

Démarrer Putty pour vous connecter en SSH à votre VM.

Entrer l'adresse publique du serveur : 149.202.77.193 et le numéro de port correspondant à votre machine : 78xx

Identifiant de connexion à la VM :

  • login : user
  • password : ilovedev

Connexion en root :

su -l

Le mot de passe est toujours ilovedev

Ajout de la clé gpg :

apt -y install lsb-release apt-transport-https ca-certificates 
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Ajout du ppa :

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list

Vérifier les mises à jour :

apt update
Mettre à jour le système et rebooter :

apt upgrade -y && reboot

Après reconnexion à la VM avec putty :

apt install php8.2 php8.2-cli php8.2-{curl,bz2,mbstring,intl,yaml} libapache2-mod-php8.2

apt install git
git version

Cloner votre repository dans le root d'apache :

cd /var/www/html
git clone https://github.com/repositoryName

Créer le fichier /etc/apache2/sites-available/mysite.conf

<VirtualHost *:80>
         DocumentRoot /var/www/html/repositoryFolder
         ServerName srv1-vm-xxxx.sts-sio-caen.info
         DirectoryIndex /index.php

         <Directory /var/www/html/repositoryFolder>
             Require all granted
         </Directory>

         ErrorLog /var/log/apache2/mysite_error.log
         CustomLog /var/log/apache2/mysite_access.log combined
</VirtualHost>

Activer le site et recharger Apache :

a2ensite mysite
systemctl reload apache2

Il est probable que votre site vous délivre dans un premier temps une erreur 500 :

c'est votre code source qui en est à l'origine, il vous faut trouver la ou les erreurs, en examinant les logs apache relatifs à votre site :

Ils sont situés dans le fichier que vous avez spécifié dans la configuration du vhost :

/var/log/apache2/mysite_error.log

Redéclaration

PHP Fatal error:  Cannot redeclare yaml_parse_file()

Diagnostic :

L'extension yaml est installée avec le php de la VM. La fonction déclarée dans le fichier yaml ne doit donc plus l'être (ou de manière conditionnelle).

Résolution :

use Symfony\Component\Yaml\Yaml;
use Symfony\Component\Yaml\Exception\ParseException;

if (!function_exists('yaml_parse_file')) {
    function yaml_parse_file($file){
	    try {
		    return Yaml::parseFile($file);
	    } catch (ParseException $exception) {
		    printf('Unable to parse the YAML string: <b>%s</b>', $exception->getMessage());
	    }
    }
}

Chemins

Warning: include(/test/assets/header.php) [function.include]: failed to open stream: No such file or directory

Diagnostic :

Le chemin n'a pas été trouvé pour le fichier à inclure dans le script php…

Résolution :

Vérifier le chemin et l'exprimer relativement au fichier php actuellement exécuté, en faisant attention à la casse (Linux contrairement à Windows fait la différence entre majuscules et minuscules).

L'installation de Mysql/mariaDB est facultative, et n'est à faire que si vous en avez besoin dans votre portfolio.

Installation de MariaDb (en root) :

apt update
apt install mariadb-server

Sécurisation de l'installation :

mysql_secure_installation

Mettre le mot de passe ilovedev sur le compte root

Tester l'installation en mode client :

mariadb

Installation de la librairie PDO pour mariaDb/Mysql :

apt install php8.2-{dev,pear,mysql}

  • web/vm-install.1703426940.txt.gz
  • Dernière modification : il y a 5 mois
  • de jcheron