Outils pour utilisateurs

Outils du site


divers_securite:https

Passage en HTTP S

Etape

  1. Sauvegarde des fichiers et base de données
  2. Ajout du certificat et passage en https via VirtualMin
  3. Check des liens absolus (en durs) dans les fichiers et en base de données
  4. 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 mysqldump (préférable) - mysqldump -u sportpolice -p sportpolice > fspn_save_3005_https.sql
  • utiliser un plugin/module :

Plugin Wordpress

Drupal

Drush

Vous pouvez utiliser les outils de commandes Drush. Voir le tuto d’installation et d’utilisation de Drush (TODO)

Module

Ajouter certificat et activation https

Voir le 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/

Redirection .htaccess

Wordpress

# BEGIN WordPress
<IfModule mod_rewrite.c>
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/$1 [R=301,L]
# Redirection du www en HTTPS
RewriteCond %{HTTP_HOST} ^nzdirect.fr [NC]
RewriteRule ^(.*)$ https://www.nzdirect.fr/$1 [R=301,L]
</IfModule>

Drupal​​​​​​

RewriteEngine on

[…]

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com*
RewriteRule ^(.*)$ https://www.interaction-interim.com/$1 [L,R=301]


Si la redirection ne fonctionne pas :

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

divers_securite/https.txt · Dernière modification : 2023/09/05 14:20 de 127.0.0.1