« Tables » : différence entre les versions
| Ligne 75 : | Ligne 75 : | ||
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 | |||
Déplacement des fichiers/dossiers dans .../htdocs/ | Déplacement des fichiers/dossiers dans .../htdocs/ | ||
mv /tmp/* /var/www/localhost/htdocs/ | |||
rc-service apache2 reload | |||
=Test des modules présents sur le serveur qui fonctionne et qui pourraient avoir un rapport= | =Test des modules présents sur le serveur qui fonctionne et qui pourraient avoir un rapport= | ||
Version du 15 mai 2025 à 16:14
Test d'un serveur apache sur alpine léger en frontal
(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
apk update /upgrade apk add apache2 php83-apache2 apache2-ctl
apache2-ctl permet de lister les modules installés avec
apachectl -M
- 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
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
Corriger phpToPDF.php : AddPage($orientation = , $size = , $rotation = 0) (il manque deux arguments) Corriger pdf1.php en supprimant 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...
Fonctionne en frontal Fonctionne derrière le proxy
- Pour automatiser le démarrage d'un service
sur débian :
# systemctl enable *service* (p. ex. nginx)
sur alpine :
# rc-update add *service* (p.ex. apache2)