Publication - Déploiement du projet web

← Les principes · 16 diapositives · flèches ou clic pour avancer

Déploiement - du projet web - Sur un serveur web Debian ou Ubuntu - Environnement recommandé par Nadine Giasson St-Amand
Version en SFTP - Avoir un VPS avec linux (Debian ou Ubuntu), possède automatiquement SSH - Prendre note de son IP - Créer un usager non-root - Avoir un serveur web fonctionnel - Installer le serveur web - Installer la base de données - Préparer la base de données - Transférer les fichiers - Tester
Créer un usager non root - Créer l'usager - adduser pseudonyme - Refaire son mot de passe - passwd pseudonyme - Ajouter l'usager au sudoers (seulement le vôtre) - usermod -aG sudo pseudonyme - Changer pour cet usager - su pseudonyme - Avec cela l'utilisateur peut faire sudo - sudo (commande de l'admin)
Avoir un serveur web fonctionnel - Se connecter en SSH - Installer putty - Utiliser l'adresse ip ou le nom de domaine qui se termine en vps.ovh.ca - Installer le serveur web et la base de données - sudo apt-get install apache2 - sudo apt-get install php - sudo apt-get install mysql-server - sudo apt-get install phpmyadmin - sudo apt-get install php-mysql - sudo apt-get install jed - cd /etc/php…
Commandes pour installer des logiciels - Mettre la liste à jour - sudo apt-get update - Chercher un logiciel - apt-cache search logiciel - apt-cache search logiciel | grep autretruc - apt-cache search logiciel | grep -v trucaenlever - apt-cache search logiciel | grep -v trucaenlever | more - Installer un logiciel - sudo apt-get install logiciel
Tester le serveur et le php - Tester le serveur web en html - ifconfig - taper l'ip dans le navigateur - Tester le php - sudo apt-get install jed - cd /var/www/html - sudo touch info.php - sudo jed info.php (Ctrl-X Ctrl-S) (Ctrl-X Ctrl-C) - <?php - phpinfo(); - ?>
Installer via WinSCP - directement dans webroot - Créer un sous-répertoire dans le web root - cd /var/www/html - sudo mkdir mondedespokemons - sudo chown webmestre:www-data mondedespokemons - Importer la base de données (technique sans phpmyadmin) - Transférer (via WinSCP) le fichier sql dans notre répertoire perso du serveur - me positionner dans le répertoire qui contient le fichier sql avec cd…
Créer un utilisateur pour la base de données - MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> SET PASSWORD FOR 'nba'@'localhost' = PASSWORD('testtest'); MariaDB [(none)]> GRANT ALL PRIVILEGES ON nba.* TO 'nba'@'localhost'; - OU - CREATE USER mondepokemon@localhost IDENTIFIED BY 'testtest'; GRANT ALL PRIVILEGES ON mondepokemon.* TO mondepokemon@localhost; FLUSH PRIVILEGES;
Réinitialiser le mot de passe MySQL - Redémarrer le serveur Mysql en mode non-sécurisé - sudo /etc/init.d/mysql stop OU sudo systemctl stop mysql OU sudo service mysql stop OU sudo systemctl stop mariadb - sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking & OU sudo mysqld_safe --skip-grant-tables --skip-networking & - Changer le mot de passe root - mysql --version - mysql -u root -…
Réinitialiser l'utilisateur root dans Ubuntu - sudo apt-get remove --purge mysql-server mysql-client mysql-common - sudo apt-get autoremove - sudo rm -rf /var/lib/mysql - sudo rm -rf /var/lib/mysql - sudo apt-get install mysql-client mysql-server
Réhabiliter l'utilisateur mysql root dans Debian - sudo mysql -u root - mysql> DROP USER 'root'@'localhost'; - mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'motdepasse'; - mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; - mysql> FLUSH PRIVILEGES;
Activer les logs - cd /etc/php/7.0/apache2/ - jed php.ini display_errors = On display_startup_errors = On log_errors = On mysqlnd.debug = /var/log/php-mysql - Ctrl-X Ctrl-S - Ctrl-X Ctrl-C - /etc/init.d/apache2 restart
Pour les images - cd /etc/php/7.0/apache2/ - jed php.ini memory_limit = 128M
Version avec GIT ou SVN - À suivre.
Désactiver la cache sur linux - sudo jed /etc/php/7.0/apache2/php.ini - (on efface les ; devant ces lignes) - opcache.enable=0 - opcache.enable_cli=0 - Ctrl-X Ctrl-S - Ctrl-X Ctrl-C - sudo /etc/init.d/apache2 restart - Ctrl F5 sur le navigateur ou Ctrl-R sur le Javascript ouvert
WordPress - Permalien - /%year%/%monthnum%/%day%/%postname%/ - remplacé par - /%category%/%postname%/