« Tables » : différence entre les versions

De Documentation
Aller à la navigationAller à la recherche
 
(14 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
----
----
==Test d'un serveur apache sur alpine léger en frontal==
=Installation du serveur web=
(arrêt des autres conteneurs)
----
apk update && apk upgrade
apk add apache2
 
Modification de la page d'affichage par défaut :
vi /var/www/localhost/htdocs/index.html
 
Rendre le conteneur accessible sur le port 80 (à faire sur l'hôte):
lxc config device add apache myport80 proxy listen=tcp:0.0.0.0:80 connect=tcp:127.0.0.1:80
 
(pour vérifier à partir de lhôte -> curl 10.178.91.17)
 
rc-service apache2 start
netstat -ntpl
 
Test à partir de l'ordinateur local OK !
 
Installation de php :
apk add php php83-apache2 apache2-ctl mlocate
'''''apache2-ctl''''' : pour lister les modules
 
'''''mlocate''''' : pour localiser les fichiers et dossiers (Utiliser ''updatedb'' pour rafraîchir la base de données)
 
Pour lister les modules installés :
apachectl -M
(''php_module apparaît'')
 
Modification de la page par défaut
'''index.php''' :
<?php phpinfo(); ?>
rc-service apache2 restart
 
Test sur l'ordinateur bureau :
-> ok
 
==Tables sur alpine léger==
 


:*Création du conteneur alpine léger
:*Création du conteneur alpine léger
  apk update /upgrade
  apk update /upgrade
  apk add apache2 php83-apache2 apache2-ctl
  apk add apache2 php83-apache2 apache2-ctl php83-gd et php83-zlib
'''apache2-ctl''' permet de lister les modules installés avec  
'''apache2-ctl''' permet de lister les modules installés avec  
  apachectl -M
  apachectl -M
'''php83-gd''' et '''php83-zlib''' sont nécessaires pour faire fonctionner '''tables'''
<br>
<br>
:*Création du fichier /etc/apache2/conf.d/remoteip.conf avec
:*Création du fichier /etc/apache2/conf.d/remoteip.conf avec
Ligne 56 : Ligne 20 :
:*Modification de /etc/apache2/httpd.conf - décommenter :
:*Modification de /etc/apache2/httpd.conf - décommenter :
  LoadModule remoteip_module modules/mod_remoteip.so
  LoadModule remoteip_module modules/mod_remoteip.so
<br>
:*Relancer nginx dans le conteneur '''proxy''' :  
:*Relancer nginx dans proxy :  
  systemctl restart nginx
  systemctl restart nginx
:*Vérifier le fonctionnement et les modules de php  
:*Vérifier le fonctionnement et les modules de php  
Supprimer /var/www/localhost/htdocs/'''index.html''' et le remplacer par :
::Supprimer /var/www/localhost/htdocs/'''index.html''' et le remplacer par :
<div class="toccolours mw-collapsible mw-collapsed">
<div class="toccolours mw-collapsible mw-collapsed">
/var/www/localhost/htdocs/'''index.php'''
/var/www/localhost/htdocs/'''index.php'''
Ligne 70 : Ligne 32 :
</div></div>
</div></div>
Afficher la page dans un navigateur à l'adresse du serveur.
Afficher la page dans un navigateur à l'adresse du serveur.
<br>


=Installation de 'Tables'=
=Installation de 'Tables'=


Copie des fichiers/dossiers dans /tmp du conteneur :
:*Copie des fichiers/dossiers dans /tmp du conteneur :
  # lxc file push /home/domi/Documents/transfertTables/* tables/tmp/ -pr
lxc file push /home/domi/Documents/transfertTables/* tables/tmp/ -pr
 
Déplacement des fichiers/dossiers dans .../htdocs/
  # mv /tmp/* /var/www/localhost/htdocs/
  # rc-service apache2 reload
 
La page s'affiche, mais pas le PDF : error 500 -> il doit manquer un module...
 
=Test des modules présents sur le serveur qui fonctionne et qui pourraient avoir un rapport=
  php83-ctype : gestion des caractères -> marche pas
  php83-curl : gestion des requêtes par url -> marche pas
  php83-dom : Document Object Model (XML) -> marche pas
  php83-fileinfo : marche pas
  ftp ; gettext marche pas
  iconv, imagick : ignorées
  intl ; mbstring toujours pas...
  mysqli ; mysqld ; openssl ; pdo ; phar : ignorées
  posix
  readline : non trouvé, mais il existe des apk -> installation, n'apparaît pas
  session ; shmop : ignorées
  simpleXML ; sockets marche pas
  sodium ; sysvmsg ; sysvsem ; sysvshm ; tokenizer : ignorées
  wddx introuvable, voir dans conf php
  xml ; xmlreader ; xmlwriter ; xsl ; opcache marche pas
  zip ; zlib : ignorées
 
Abandon, test avec une autre image...
----
'''Solution :'''


installer php-gd et php-zlib
:*Déplacement des fichiers/dossiers dans .../htdocs/
mv /tmp/* /var/www/localhost/htdocs/
rc-service apache2 reload


Corriger phpToPDF.php : AddPage($orientation = '', $size = '', $rotation = 0) (il manque deux arguments)
:*Corriger '''phpToPDF.php''' :  
Corriger pdf1.php en supprimant les lignes vides (au moins au début du document)
AddPage($orientation = '', $size = '', $rotation = 0) (il manque deux arguments)
Je suppose qu'il y a une option pour ignorer ce genre d'erreurs sur le serveur virtuel...
:* Corriger '''pdf1.php''' :
supprimer les lignes vides (au moins au début du document)<br>
''(Je suppose qu'il y a une option pour ignorer ce genre d'erreurs sur le serveur virtuel...)''


Fonctionne en frontal
=Goaccess (analyse des logs d'accès)=
Fonctionne derrière le proxy


* Pour automatiser le démarrage d'un service
:*Installation de goaccess :
sur débian :
apk add goaccess
  # systemctl enable *service* (p. ex. nginx)
sur alpine :
  # rc-update add *service* (p.ex. apache2)

Dernière version du 29 juin 2025 à 10:25


Installation du serveur web

  • Création du conteneur alpine léger
apk update /upgrade
apk add apache2 php83-apache2 apache2-ctl php83-gd et php83-zlib

apache2-ctl permet de lister les modules installés avec

apachectl -M

php83-gd et php83-zlib sont nécessaires pour faire fonctionner tables


  • Création du fichier /etc/apache2/conf.d/remoteip.conf avec

/etc/apache2/conf.d/remoteip.conf

 RemoteIPHeader X-Real-IP
 RemoteIPTrustedProxy proxy.lxd 


  • Modification de /etc/apache2/httpd.conf - décommenter :
LoadModule remoteip_module modules/mod_remoteip.so
  • Relancer nginx dans le conteneur proxy :
systemctl restart nginx
  • Vérifier le fonctionnement et les modules de php
Supprimer /var/www/localhost/htdocs/index.html et le remplacer par :

/var/www/localhost/htdocs/index.php

<?php
 phpinfo();
 ?>

Afficher la page dans un navigateur à l'adresse du serveur.

Installation de 'Tables'

  • Copie des fichiers/dossiers dans /tmp du conteneur :
lxc file push /home/domi/Documents/transfertTables/* tables/tmp/ -pr
  • Déplacement des fichiers/dossiers dans .../htdocs/
mv /tmp/* /var/www/localhost/htdocs/
rc-service apache2 reload
  • Corriger phpToPDF.php :

AddPage($orientation = , $size = , $rotation = 0) (il manque deux arguments)

  • Corriger pdf1.php :

supprimer les lignes vides (au moins au début du document)
(Je suppose qu'il y a une option pour ignorer ce genre d'erreurs sur le serveur virtuel...)

Goaccess (analyse des logs d'accès)

  • Installation de goaccess :
apk add goaccess