====== Passage en HTTP S ====== ===== Etape ===== - Sauvegarde des fichiers et base de données - Ajout du certificat et passage en https via VirtualMin - Check des liens absolus (en durs) dans les fichiers et en base de données - Redirection .htaccess Ces étapes sont à effectuer chronologiquement et peuvent être réalisé lors de la MEL pour profiter qu’une sauvegarde ne soit pas utile. ===== Sauvegarde fichier et bdd ===== ==== Sauvegarde des fichiers ==== Différentes options : * Transfert basique grâce au FTP, indépendant des plateformes / technos. * SSH > création d'un zip du dossier du site et stockage où vous le souhaitez (préférable) ''-zip -r foo.zip dir_path'' Ou en utilisant le plugin Wordpress, module Drupal ou Drupal Drush (ci-dessous) ==== Sauvegarde base de données ==== Différentes options : * Vous pouvez le faire à la main, en passant par la Phpmyadmin du site. * Via SSH avec [[https://stackoverflow.com/questions/8444108/how-to-use-mysql-dump-from-a-remote-machine|mysqldump ]](préférable) - ''mysqldump -u sportpolice -p sportpolice > fspn_save_3005_https.sql'' * utiliser un plugin/module : === Plugin Wordpress === **Duplicator ** [[https://fr.wordpress.org/plugins/duplicator/|https://fr.wordpress.org/plugins/duplicator/]] \\ [[https://wpformation.com/migrer-wordpress-duplicator/|https://wpformation.com/migrer-wordpress-duplicator/]] ==== Drupal ==== [[https://www.drupal.org/docs/7/site-building-best-practices/backup-your-database-and-files|https://www.drupal.org/docs/7/site-building-best-practices/backup-your-database-and-files]] === Drush === Vous pouvez utiliser les outils de commandes Drush. Voir le tuto d’installation et d’utilisation de Drush (TODO) === Module === **Backup and Migrate** [[https://www.drupal.org/project/backup_migrate|https://www.drupal.org/project/backup_migrate]] ===== Ajouter certificat et activation https ===== Voir le [[https://www.dropbox.com/home/_partage (2)/_Ressources/https?preview=certificat_https_110117.docx|tutoriel]] fonctionnel avec un domaine. Reste à définir comment ajouter un certificat sur un sous-domaine. **Erreurs** \\ ''Wrote file to /home/xxxxxxx/public_html/.well-known/acme-challenge/XByAXj3GF8pYzovO-c8XbVgh7wQYtM6izgrJZT0vBkE, but couldn't download.'' **Solution** \\ Vider l’.htaccess, regénérer, reremplir l’.ht ===== Check liens durs ===== ==== Fichiers ==== Il va falloir vérifier les fichiers template un par un, remplacer les liens absolus par des liens relatifs ou générés. \\ Il est important de faire attention à éviter le plus possible de lien relatif lors du développement en général. === Wordpress === Si vous utilisez Wordpress vous pouvez récupérer les pages par leur ID ou slug. \\ - get_permalink( get_page_by_path( 'map' ) ) \\ - get_permalink( get_page_by_title( 'Map' ) ) \\ - home_url( '/map/' ) === Drupal === - Sur un champ de type lien : \\ href="{ { node.field_accueil_lien_gauche.0.url } }" { { node.field_accueil_lien_gauche.title } } - Image du theme : \\ src="{ { base_path ~ directory } }/images/ \\ src="{ { url_image } }/images/ \\ $variables['url_image'] = 'http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']).'/themes/custom/espacedomicile'// //- Lien non administrable : \\ href="/locataire/annonces" - Image dans une galerie (avec style image) : \\ src="{ { node.field_avendre_images_slide[i].entity.uri.value | image_style('max_1300x1300') } }"// ==== Base de données ==== A la main : \\ - Exporter la bdd en .sql \\ - Modifier le fichier avec un CtrlF+CtrlH de l’ancienne en remplaçant par la nouvelle. \\ - Importer la bdd \\ Si la base de donnée est trop importante, faire les manips en cli : \\ - mysqldump -u interaction-interim –insert-ignore -p interaction_interim > 1619-insertignore.sql \\ - sed 's,http://www.interaction-interim.com,https://www.interaction-interim.com,g' wantedsqlfile.sql > sqlaftersearchandreplace.sql \\ - mysql -u interaction-interim -p interaction_interim < wantedsqlfile.sqle Script MySQL \\ Script Search&Remplace \\ [[https://interconnectit.com/products/search-and-replace-for-wordpress-databases/|https://interconnectit.com/products/search-and-replace-for-wordpress-databases/]] ===== Redirection .htaccess ===== ==== Wordpress ==== # BEGIN WordPress \\ \\ RewriteEngine On \\ RewriteBase / \\ RewriteRule ^index\.php$ - [L] \\ RewriteCond %{REQUEST_FILENAME} !-f \\ RewriteCond %{REQUEST_FILENAME} !-d \\ RewriteRule . /index.php [L] # Redirection HTTPS \\ RewriteCond %{SERVER_PORT} ^80$ [OR] \\ RewriteCond %{HTTPS} =off \\ RewriteRule ^(.*)$ [[https://www.nzdirect.fr/|https://www.nzdirect.fr/]]$1 [R=301,L] \\ # Redirection du www en HTTPS \\ RewriteCond %{HTTP_HOST} ^nzdirect.fr [NC] \\ RewriteRule ^(.*)$ [[https://www.nzdirect.fr/|https://www.nzdirect.fr/]]$1 [R=301,L] \\ ==== Drupal​​​​​​ ==== RewriteEngine on […] RewriteCond %{HTTPS} off [OR] \\ RewriteCond %{HTTP_HOST} ^www\.example\.com* \\ RewriteRule ^(.*)$ [[https://www.interaction-interim.com/|https://www.interaction-interim.com/]]$1 [L,R=301] \\ Si la redirection ne fonctionne pas : # BEGIN WordPress \\ \\ RewriteEngine On \\ RewriteBase / \\ RewriteCond %{HTTPS} !=on \\ RewriteRule ^ [[https://%|https://%]]{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteRule ^index\.php$ - [L] \\ RewriteCond %{REQUEST_FILENAME} !-f \\ RewriteCond %{REQUEST_FILENAME} !-d \\ RewriteRule . /index.php [L] \\ \\ # END WordPress