Lancer en Cron.php ou Cron.sh de Magento et Planifier

1) En ligne de commande à Planifier:

l’interet de la ligne de commande c’est :

  • C’est très facile
  • C’est très rapide
  • Vous pouvez l’ajouter dans les taches planifiées (cron)
php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.phplog.php clean

ou bien : 

/var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh

3) Taches Planifiées avec gnome-schedule

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description « Ma sauvegarde du Lundi »
  • Commande : Précisez votre la ligne de commande :
    ./var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh
  • Expert saisissez : Minute 10 – Heure 6 – jour * – Mois * – jour de la semaine 1 = à 6H10 tous les lundi
  • Ajouter et Valider

Vous pouvez Cliquez sur  Lance la tache Sélectionner + « Exécuter » pour tester la tache.

________________________________

3 Bis ) Ou créer une tâche Planifiée avec crontab

Planificateur de tâche en ligne de commande

(sans gnome-schedule), tapez :
crontab -e
insérez : 10 6 * * * ./var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh

Explication des instructions crontab sur wikipedia

Purger pour réduire la base MySQL de Magento et Planifier

Nettoyage des Log de Magento soit en manuel via PhpMyAdmin ou en Ligne de commande.
C’est le moyen le plus efficace de nettoyer les logs pour ceux qui travaillent plus à l’aise avec les bases de données. Il est plus rapide que le haut-dans les outils de Magento, et il vous permet de nettoyer quelques tables non incluses dans ces outils.

1) phpMyAdmin via le Panneau Plesk

Dans la droite (principale) une image, sélectionnez la case à cocher pour les tables suivantes:

dataflow_batch_export
dataflow_batch_import
log_customer
log_quote
log_summary
log_summary_type
log_url
log_url_info
log_visitor
log_visitor_info
log_visitor_online
report_viewed_product_index
report_compared_product_index
report_event
  • Au bas de la page, cliquez sur le menu déroulant qui dit « avec une sélection: » et sélectionnez « vide ».
  • Un écran de confirmation s’affichera. Cliquez sur « Oui ». Cela tronque toutes les tables sélectionnées.

Effectuer régulièrement :
Nous avons vu 2Go + bases baisse d’un quart de leur taille après le nettoyage des journaux, il est donc très important que ce genre d’entretien sont effectués régulièrement. Surtout si votre temps jusqu’au premier octet de latence commence à pousser plus grande, et vous avez mis en œuvre les tweaks de performance.

Source : http://docs.nexcess.net/magento-database-maintenance

2) En ligne de commande à Planifier:

l’interet de la ligne de commande c’est :

  • C’est très Facile
  • C’est très rapide
  • Et vous pouvez ajouter cette ligne dans les Taches Planifier a faire régulièrement (cron)
php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

3) Planifiée

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description « Ma sauvegarde du Lundi »
  • Commande : Précisez votre la ligne de commande : php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean
  • Expert saisissez : Minute 0 – Heure 6 – jour * – Mois * – jour de la semaine 1 = à 6H00 tous les lundi
  • Ajouter et Valider

Vous pouvez Cliquez sur  Lance la tache Sélectionner + « Exécuter » pour tester la tache.

  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 6 * * * php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

___________________________________________

Ou  avec crontab  (Planificateur de tâche en ligne de commande )

(sans gnome-schedule), tapez :
crontab -e
insérez : 0 6 * * * php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

Explication des instructions crontab sur wikipedia

_________________________________________________________

4) Méthode plus efficace, par des instructions mySQL dans un Script

voir ce tutoriel ici

Script sauvegarde du dossier Magento entre deux serveurs

Pour copier le dossier de Magento entre deux serveurs, automatiquement la Nuit .

il faut :

  • Installer curlftpfssur les serveurs (au moins sur celui Destination)
  • Créer un Script de copie entre les deux serveurs
  • Planifier l’exécution du script la nuit (matin très tôt +-5h)

Pour installer curlftpfssur  soit en ligne de commande dans un terminal (ssh avec putty.exe), tapez

sudo apt-get install curlftpfs

Soit sous gnome si vous acceder a gnome via un interface grahique voir FreeNX

> ubuntu > applications >Logithèque Ubuntu > curlftpfss

_______________________________________________________

voici que que nous allons mettre dans le Script

A saisir dans un éditeur de texte : enregistrez sous : /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh


#!/bin/sh
# La première ligne sert à spécifier quel shell à excéuter. (sh)
# pour executer un script il faut
# a) changer le droit devenir executable:  chmod 777 NomDuScrip.sh
# b) puis l'executer : ./NomDuScrip.sh
##################################################################

#  Création de deux dossiers temporaires sur votre serveur :  /
mkdir /var/ftpt
mkdir /var/ftptemp

# 2 Activer la connexion du serveur distant en FTP vers ce dossier /var/ftp
# Vous devez connaitre le nom du ServeurFTP, Login et Mot de passe
curlftpfs ftp://MonServeurFtp.fr/DossierDistant /var/ftp -o user=Login:MotDePasse

# 3 Purger la cache du serveur distant :
rm -Rf /MonFtp/Magento/var/cache
rm -Rf /MonFtp/Magento/var/session

# 4 Purger la cache du serveur destination :
rm -Rf /var/www/vhosts/VotreSite.fr/httpdocs/Magento/var/cache
rm -Rf /var/www/vhosts/VotreSite.fr/httpdocs/Magento/var/session

# 5 sauvegarder .htaccess et local.xml du serveur Destination
cp /var/www/vhosts/VotreSite.fr/httpdocs/Magento/app/etc/local.xml /var/ftptemp/sauvegarde_local.xml
cp /var/www/vhosts/VotreSite.fr/httpdocs/Magento/.htaccess /var/ftptemp/sauvegarde_htaccesslocal
#
# 6 Copie du dossier Magento (Serveur distance source) vers le celui-ci
# avec la commande cp -r  vous pouvez ajouter 
# -uNe pas effectuer la copie si le fichier destination existant a une
# date  de  modification  plus  récente que celle du  fichier source.
cp -r -u /var/ftp/magento /var/www/vhosts/MonSite.fr/httpdocs/
#
# 6 Remettre .htaccess et local.xml du serveur Destination
cp /var/ftptemp/sauvegarde_local.xml /var/www/vhosts/VotreSite.fr/httpdocs/Magento/app/etc/local.xml
cp /var/ftptemp/sauvegarde_htaccess /var/www/vhosts/VotreSite.fr/httpdocs/Magento/.htaccess
#
# 7 Vérifier les Droits
chmod -R 777 /var/www/vhosts/VotreSite.fr/httpdocs/Magento/
#
# 8 Désactiver le ftp /var/ftp/ (démonter)
umount /var/ftp
#
# 9 supprimer des dossiers temporaires /var/ftp et /var/ftptemp
rm -Rf /var/ftp
rm -Rf /var/ftptemp

#
#
# Terminée....

Pour Exécuter le script :

changer le droit devenir executable:

chmod 777 /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh 


Exécuter :

./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh 

_______________________________________________________

Attention : Il faut aussi copier la base de données Mysql de Magento

J’ai fait deux autres tutoriels  dont  un qui regroupe les deux en mêmes temps Base + Dossier ici : Tutoriel pour automatiser une copie total de magento entre deux serveurs

et un juste pour la Base Mysql ici : Comment créer un script de copie base mysql-entre deux serveurs magento prestashop

_______________________________________________________

Créer un Tache Planifier pour lancer ce script Automatiquement :

Créer une tâche Planifiée

Pour installer le planificateur taches gnome schedule suivre ce tutoriel.

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description “Ma sauvegarde”
  • Commande : Précisez votre Script ou la ligne de commande :./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine 1 = à 7H00 tous les lundi
  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 5 * * * ./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.___________________________________________________________________

    Ou  avec crontab  (Planificateur de tâche en ligne de commande )

    (sans gnome-schedule), tapez :
    crontab -e
    insérez :0 5 * * *
    /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Explication des instructions crontab sur wikipedia

     j’ai fait un tutoriel sur les taches Planifiées ici

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

Planifier une Sauvegarde d’un Serveur PLESK

  1. Sauvegarde vers un dossier (répertoire) du Serveur.
  2. Sauvegarde vers un dossier en FTP ( vers un autre Hébergement)

Ce que vous allez voir ici est valable aussi bien au Niveau du Serveur ou dans un domaine du Serveur :

1) Sauvegarde vers un dossier (répertoire) du Serveur ou d’un domaine (même Manip).

La manipulation est très simple, dans Plesk :

Sauvegarde Serveur: Plesk Accueil> Outils & Paramètres > Gestionnaire de sauvegardes

Sauvegarde Domaine: Plesk Accueil> Abonnements>  Votre Domaine> Sites Web & Domaines > Gestionnaire de sauvegardes

Remplir le Formulaire :

  • Activer cette tâche de sauvegarde « oui« 
  • Périodicité des sauvegardes « jour/Semaine/mois/
  • Démarrer la création de la sauvegarde à (HH:mm) *: Je conseille Tard dans la nuit, pas en même temps qu’une autre Tache Planifier
  • Nombre maximum de sauvegardes dans le répertoire : 3 devrais suffire
    c’est pour économiser l’espace disque, vous pouvez limiter le nombre de sauvegardes. Une fois cette limite atteinte, les nouvelles sauvegardes remplaceront les anciennes dans le répertoire.
  • Suspendre les domaines jusqu’à la fin de la tâche de sauvegarde : si vous avez de problème de ressource ou des échecs, Cochez cette Case.

La sauvegarde par Plesk sera sur votre serveur ici : /var/lib/psa/dumps/ + domains/  pour une sauvegarde juste d’un domaine

Note : Surveiller la taille de ce dossier, vous pourrier Saturer votre Serveur.


2) Sauvegarde vers un répertoire FTP.

Note : Il est inutile de faire un Sauvegarde vers un dossier (répertoire) du Serveur. si vous faites des sauvegardes en FTP, simplement car ce choix FAIT AUSSI la Sauvegarde vers un dossier du serveur avant transférer en FTP

Il est nécessaire d’avoir un petit hérbergement FTP ( personnel) pour procéder a ce type de sauvegarde.

a)  Dans Plesk :

Sauvegarde Serveur: Plesk Accueil> Outils & Paramètres > Gestionnaire de sauvegardes

Sauvegarde Domaine: Plesk Accueil> Abonnements>  Votre Domaine> Sites Web & Domaines > Gestionnaire de sauvegardes

Remplir le Formulaire avec les information de Votre compte FTP :

  • Nom d’hôte ou adresse IP du serveur FTP *
  • Répertoire pour le stockage des fichiers de sauvegardes
  • Nom d’utilisateur FTP *
  • Mot de passe FTP

b) Dans Plesk : Outils & Paramètres>Répertoire du serveur> Gestionnaire de sauvegardes > Paramètres de la sauvegarde planifiée

Remplir le Formulaire :

  • Activer cette tâche de sauvegarde « oui« 
  • Périodicité des sauvegardes « jour/Semaine/mois/
  • Démarrer la création de la sauvegarde à (HH:mm) *: Je conseille Tard dans la nuit, pas en même temps qu’une autre Tache Planifier
  • Nombre maximum de sauvegardes dans le répertoire : 3 devrais suffire
    c’est pour économiser l’espace disque, vous pouvez limiter le nombre de sauvegardes. Une fois cette limite atteinte, les nouvelles sauvegardes remplaceront les anciennes dans le répertoire.
  • Configuration et contenu du domaine: choisir intégralité de la configuration et du contenu
  • Suspendre les domaines jusqu’à la fin de la tâche de sauvegarde : si vous avez de problème de ressource ou des échecs, Cochez cette Case.

La sauvegarde par Plesk sera sur votre serveur ici : /var/lib/psa/dumps/ +domains/ pour une sauvegarde juste d’un domaine

Note : Surveiller la taille de ce dossier, vous pourrier Saturer votre Serveur  et l’espace disponible sur votre FTP



La sauvegarde par Plesk sera sur votre serveur

ici :

/var/lib/psa/dumps/ +domains/ pour une sauvegarde juste d'un domaine

 



Modifier le Chemin du Back Office /admin/ de Magento

D’origine le chemin de l’admin de Magento (Backoffice) est :

http://www.Votresite.fr/Dossier Magento/index.php/admin/

Bien Trop Facile à trouver, donc bien trop dangereux.

Voici comment le modifier, Editer local.xml

il est nécessaire de modifier local.xml

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Modifier la ligne frontName  [admin]  par exemple par MonAdmin
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[IpDuNouveauServeur]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName ![CDATA[MonAdmin]] /frontName

Connectez Magento a une Base de données Mysql d’un serveur distant.

Pour une multitude de raisons, on peut a voir besoin de connecter Magento a une base de données distante.

  • si vous avez un hébergement mutualisé
  • Si votre Hébergement et trop lent
  • Pour utiliser une sauvegarde
  • Pour des test…

Il faut d’abord :

  1. Autoriser la connexion à distance MySQL du Serveur distant
  2. Avoir  copié votre Base de donnée Mysql Magento sur ce serveur
  3. Modifier le fichier de configuration Magento : local.xml

1.Autoriser la connexion à distance MySQL du Serveur distant

Ouvrir l’accès Mysql vers l’extérieur :

  • Editez le fichier : /etc/mysql/my.cnf
  • Commentez la ligne avec un # : skip-networking et Bind-address
  • Redémarrer  : Service mysql restart

J’ai fait un tutoriel ici : Explication pour Autoriser la connexion a distance MySQL


2. Avoir copié votre Base de donnée Mysql Magento sur ce serveur

j’ai fait plusieurs explication pour tranférer la base de données MySQL de Magento, selon votre cas ici :


3. Modifier le fichier de configuration Magento : local.xml

 Editer local.xml

il est nécessaire de modifier local.xml

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Pour Mettre les informations concernant votre nouvelle Base MySQL de Magento et le nouveau serveur:
  • IpDuNouveauServeur : c’est l’ip du serveur Distant Mysql
  • LoginDeLABase : Le nom de l’utilisateur de la base MySQL/Magento Distante
  • MotDePasse : Le mot de Passe de l’utilisateur de la Base distante
  • NomDelaBase : Le Nom de Base MySQL/Magento Distante
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[IpDuNouveauServeur]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName  ![CDATA[admin]]  /frontName

Important :

Vider la cache et les Sessions :  Dans le Dossier /magento/var/cache et /magento/var/session

Si non la modification du Local.xml ne sera pas pris en compte.

Copier une base MySQL entre 2 serveurs avec Plesk (Magento, Prestashop, etc…)

Que ce soit une Base Magento, Prestashop ou tout autre, c’est du MySQL.

Avez vous déjà essayez d’utiliser Plesk (à partir de la 10 ou supérieur) pour copier votre base de données MySQL

C’est très simple mais d’origine ça ne fonctionner pas !

Procédure :

1) Ouvrir l’accès Mysql vers l’extérieur :

  • Editez le fichier : /etc/mysql/my.cnf
  • Commentez la ligne avec un # : skip-networking et Bind-address
  • Redémarrer  : Service mysql restart

J’ai fait un tutoriel ici : Explication pour Autoriser la connexion a distance MySQL

2) Créer une base de donnée vierge et un utilisateur

Sur le serveur de destination (Cible).

  • Créer la base vièrge : Dans Plesk >  Accueil> Abonnements> VoreSiteWeb> Sites Web & Domaines> Bases de données > Sélectionnez > Ajouter une nouvelle Base de données

3) Copier la  base de donnée vers l’autre serveur

Sur le serveur Source (de départ):

  1. Copier la base : Dans Plesk >  Accueil> Abonnements> VoreSiteWeb> Sites Web & Domaines> Bases de données > Sélectionnez > la Base source
  2. Cliquez sur faire une copie
  3. Serveur de la base de données cible Sélectionnez :  Autres…
  4. Saisissez Nom d’hôte ou adresse IP * :  Mettre ip du serveur cible
  5. Nom d’utilisateur* mettre le nom de la base cible (la base vierge)
  6. Mot de passe* de la base cible (la base vierge)
  7. Coché : Copier vers la base de données existante :
  8. Saisissez le nom de la Base cible (la vierge)

Terminé 🙂


Pour Magento :

Pour utiliser cette copie votre Magento dans un autre dossier ou serveur, il va faloir modifier aussi, core_config_data, Local.xml, .htaccess.. j’ai fait un tuto ici.


Voici ici une autre méthode pour:

Automatiser la sauvegarde Mysql entre 2 serveurs. avec un Script :

J’ai fait un Tutoriel ici : Comment automatiser la sauvegarde Mysql entre 2 serveurs. avec un Script

Autoriser la connexion à distance MySQL sur Serveur (Plesk)

Pour des raisons évidentes de sécurité les Serveur sont parametré par defaut pour utiliser uniquement les bases de données en local : Localhost 127.0.0.1

Pour de nombreuses, on veut pouvoir accéder a la base de données Mysql à partir d’un autre serveur au Hébergement

Cela permet de séparer la base de donnée de votre Hébergement php/html, Faire des copies entre Serveurs Etc..

 

Il faut Modifier sur votre Serveur de base de donnée MsSQL deux lignes dans le fichier my.cnf

Editez le fichier : /etc/mysql/my.cnf
Commentez la ligne avec un # : skip-networking et Bind-address 

port   = 3306  (normalement c'est déjà par defaut)
#Commenter cette ligne
#skip-networking

# Commenter cette ligne
# Bind-address = 127.0.0.1
# ou facultatif : vous pouvez mettre l'adresse du serveur
Bind-adresse = 176.31.254.010  (exemple d'adresse)

Redémarrez MySQL : /etc/init.d/mysql restart , dans un terminal,  ssh

service mysql restart

Une seule adresse peut être sélectionné. Si cette option est spécifiée plusieurs fois, la dernière adresse indiquée est utilisée.

Si aucune adresse ou 0.0.0.0 est spécifié, le serveur écoute sur toutes les interfaces.

Source : http://kb.parallels.com/fr/1134

Créer un Script simple pour Sauvegarder Magento MySQL

Le but est de créer un Script simple pour automatiser les Sauvegarde Magento pis ensuite de les planifier:Pour exécuter ces quelques lignes , le plus simple est de faire un script  comme ça

Avec un éditeur de texte vous créer un fichier sauvegarde.sh

  • Il doit impérativement commencer par : #!/bin/sh
  • Mettez les lignes des commandes que vous avez besoin
  • mysqldump -u, chmod,  gzip..

Voir tutoriel Créer une sauvegarde Mysql Magento en ligne de commande ici

Le Résultat doit donner ça :

#!/bin/sh
# La première ligne sert à spécifier quel shell tu veux excéuter. ici sh
# pour executer un script il faut
# 1) changer c'est droit pour devenir executable:  chmod 777 NomDuScrip.sh
# 2) puis l'executer : ./NomDuScrip.sh

echo "sauvegarde en cours..."
 mysqldump -u Login -pMotdePasse NomBase >/VotreChemin/Sauvegarde.sql chmod 777 /VotreChemin/Sauvegarde.sql gzip -f -9 /VotreChemin/Sauvegarde.sql

echo "Terminée"
  • Enregister le fichier dans un  dossier de votre Serveur, par exemple /var/MesSauvegarde/sauvegarde.sh
  • Ajouter le Droit de l’excecuter : chmod 777 /var/MesSauvegarde/sauvegarde.sh
  • Pour l’executer il vous plus qu’a taper :   ./var/MesSauvegarde/sauvegarde.sh

Vous n’avez plus qu’a insérer ce petit script dans un tâche Planifiée avec Crontab ou Gmone-schedule


Créer une tâche Planifiée

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description “Ma sauvegarde”
  • Commande : Précisez votre Script ou la ligne de commande :  ./var/MesSauvegarde/sauvegarde.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine * = à 5H00 tous les jours
  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 5 * * * ./var/MesSauvegarde/sauvegarde.sh

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

___________________________________________________________________

Ou  avec crontab  (Planificateur de tâche en ligne de commande )

(sans gnome-schedule), tapez :
crontab -e
insérez : 0 5 * * * ./var/MesSauvegarde/sauvegarde.sh

Explication des instructions crontab sur wikipedia


 j’ai fait un tutoriel sur les taches Planifiées ici

_______________________________________________________


Planificateur Tâches gnome-schedule

Introduction : Sur un Serveur Linux, on planifie des Taches avec Cron, c’est très puissant, mais franchement j’aime pas du tout.

Je préfère 100 fois  Le Planificateur Tâches Gnome (gnome-schedule) qui crée pour vous les taches Cron. ça aide 🙂 J’ai donc ajouté sur mon Serveur une Interface Graphique voir ce Tuto install FreeNx Gnome..


1) Installer Planificateur Tâches Gnome : gnome-schedule

ça suppose que vous avez déja installer Gnome/FreeNx: install FreeNx Gnome..

Sous Ubuntu avec freeNx hyper simple :  Logithèque Ubuntu >  Cherchez Tâche planifiées ou gnome-schedule


2) Créer une tâche Planifiée

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description « Ma sauvegarde du Lundi »
  • Commande : Précisez votre Script ou la ligne de commande :  Exemple : ./CheminDuScrip/script.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine 1 = à 7H00 tous les lundi
  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 7 * * * ./CheminDuScrip/script.sh #Ma sauvegarde du Lundi

Vous pouvez Cliquez sur  Lance la tache Sélectionner + « Exécuter » pour tester la tache.

___________________________________________________________________

Ou  avec crontab  (Planificateur de tâche en ligne de commande )

(sans gnome-schedule), tapez :
crontab -e
insérez : 0 7 * * * ./CheminDuScrip/script.sh

Explication des instructions crontab sur wikipedia


 3) Exemple plus parlant :

J’ai fait ici un Tutoriel : comment créer une sauvegarde de Magento automatisé avec Tâche Planifiée

Optimiser votre serveur Magento, votre hébergement pour Magento – PHP.ini – my.cnt – Nginx.cong

Les sujets qui vont êtres abordés :

  • .htaccess
  • php.ini
  • php_admin_value memory_limit,
  • php_value max_execution_time
  • my.cnf

.htaccess conseillé pour Magento :

Voici un .htaccess optimisé pour Magento,

RewriteBase /VotreDossierMagento/

# memory_limit Mini conseillé 64M
php_value memory_limit 128M
php_value max_execution_time 18000

# Facultatif : pour Activer la compression gain de 30%
<IfModule mod_deflate.c>
php_flag zlib.output_compression on   
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascrip
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
</IfModule>

 

inutile depuis fooman-speedster > 2.0Si vous avec installez l’extention : fooman-speedster < 1.2 ajouter dans le .htacces

#Si vous utilisez l'extension d'acceleration fooman-speedster RewriteRule ^(index.php/)?minify/([^/]+)(/.*.(js|css))$ lib/minify/m.php?f=$3&d=$2



Php.ini

c’est le fichier d’initialisation (réglage) de votre php, c’est donc un fichier important.

Il peut être paramétré à 3  endroits,  c’est le dernier qui l’emporte, plafonné par les restrictions des précédents:

  • Le premier c’est celui du serveur donc générale, valable pour tout les sites hébergés sur le serveur.
  • Sur un serveur avec Plesk 11 il se trouve ici : opt/psa/admin/conf/php.ini)

Edit le 1/07/2014 :

  • Sur un serveur avec Plesk 12 il se trouve ici : etc/php5/apache2/php.ini  et  etc/php5/apache2/cgi/php.ini

     

 

  • Le second c’est celui de votre site, il n’est valable que dans votre site, il est prioritaire à celui du serveur dans la limite autorisé par le premier  ( domaine d’un serveur avec Plesk il est ici : var/www/vhosts/VotreSite/conf)
  • Le Troisième c’est celui de chaque dossier dans le .htaccess (pour le voir pensez a afficher les fichiers cachés) .  il est prioritaire à celui du premier (serveur), et du Second (domaine) dans la limite autorisé par le premier comme le Second.

Exemples  d’erreurs fréquentes : 

1) Dans le .htaccess de votre dossier Magento vous mettez :

php_admin_value memory_limit 256M

ça ne sert a rien si votre Serveur limite à 128M et votre Domaine limite à 64M, votre Limite est de 64M.

2) Autre erreur :

Vous modifiez le premier ../conf/php.ini, = 256M, mais laissez les deux autres d’origines  (var/www/vhosts/VotreSite/conf, et celui dans .htaccess), ça ne sert a rien aussi, si dans le .htaccess la ligne limite est à 32M, c’est lui qui sera pris en compte 🙂

php.ini du Serveur: php_admin_value memory_limit 256M 
Ligne dans .htacces: php_admin_value memory_limit 32M

Maintenant que savez ça, nous allons pourvoir  paramétrer PHP pour Magento correctement .


php_admin_value memory_limit

Magento recommande 64M, c’est la valeur pas défaut dans le .htacces, vous pouvez toujours mettre un peu plus 128M voir 256M (toujours dans la limite de Php.ini du serveur)

Selon les cas :

  • Hébergement Mutualité : Mettre dans .htacces de votre dossier Magento (demandez à votre Hebergeur le Maxi autorisé possible)

.htacces :

php_admin_value memory_limit = 128M
  •  Serveur Dédié avec Plesk : Si  vous avez un serveur puissant dans .htaccess commentez la ligne  # (# = désactiver la ligne), et paramétrez directement le domaine ou le Serveur,

1) dans .htaccess du dossier Magento

#ligne commenté car j'utilise le paramêtre dans Plesk
#php_admin_value memory_limit = 64M

2) Dans  Plesk > Domaines > VotreNomDomaine >  Personnalisé > Paramètre PHP >

memory_limit  Saisissez

  • -1    comme illimité (serveur 16Go ou +)
  • 256 Mo        pour Serveur avec 8Go de Ram
  • 128 Mo        pour Serveur avec 4Go de Ram
  • 64 Mo          pour un serveur de 2Go de ram
 -Redémarrez Le service Apache ou le Serveur pour prendre en compte les Modifications

Attention : Mettre -1 illimité comporte des risques : Si un Script, une tache Cron part en vrille, elle  peut consommer toute la mémoire de votre Serveur, donc celui-ci va planter, utiliser -1 que si vous êtes sûr 100%, surveillez-la charge de votre serveur, si non mettez 256Mo c’est largement suffisant.


php_value max_execution_time

Magento recommande 18000, c’est la valeur pas défaut dans le .htacces, vous pouvez toujours mettre un peu plus 180000 (toujours dans la limite de Php.ini du serveur)

php_value max_execution_time 180000

# ou désactivé la si vous utilisez les paramètres dans Plesk
#php_value max_execution_time 180000
  •  Serveur Dédié avec Plesk : Si  vous avez un serveur puissant (dans .htaccess commentez la ligne  # (# = désactiver la ligne), et paramétrer directement le domaine ou le Serveur, vous pouvez mettre « 1800000 »
 -Redémarrez Le service Apache ou le Serveur pour prendre en compte les Modifications

Paramétrage de PHP.ini

Conseillé pour Magento :  opt/psa/admin/conf/php.ini

Modifier

  • memory_limit = 512M     (256M si serveur 8Go, 128M si serveur 4go)
  • max_execution_time = 18000
  • max_input_time = 1200
  • output_buffering = 4096

Facultatif Ajouter

  • default_socket_timeout = 1800000
  • pdo_mysql.cache_size = 2000
  • mysql.allow_persistent = On
  • mysql.connect_timeout = 1500  (edit le 01/07/2014)

Ou Vous pouvez aussi saisir directement dans  Plesk > Domaines > VotreNomDomaine >  Personnalisé > Paramètre PHP >

-Redémarrez Le service Apache ou le Serveur pour prendre en compte les Modifications

Pensez a Désactivé ces paramètres dans .Htaccess de Magento si elle existe pas #


Optimiser Mysql / Magento dans my.cnf

my.cnf, : c’est le fichier de configuration de la base Mysql , sur un serveur avec Plesk il est ici : /etc/mysql/my.cnf

Selon les Cas :

Serveur avec de 4 à 8Go

key_buffer        = 16M
max_allowed_packet    = 16M
thread_stack        = 192K
query_cache_limit    = 1M
query_cache_size        = 24M
table_cache = 1024

Serveur avec 16Go avec 4x Core

key_buffer        = 32M
max_allowed_packet    = 32M
thread_stack        = 192K
query_cache_limit    = 2M
query_cache_size        = 64M

####### Facultatif Ajouter ######
 table_cache = 1024  
# 2x le nombre de cores CPU innodb_thread_concurrency = 8
innodb_thread_concurrency = 8
#(safe vs speed, 0 speed, 1 safe, 2 mixed)
 innodb_flush_log_at_trx_commit = 0
 innodb_log_buffer_size = 32M
# 66% de la mémoire disponible # (3 Go sur un serveur web 8 Go de RAM ) # (1024M sur un site web 4 Go de RAM
innodb_buffer_pool_size = 4096M
innodb_additional_mem_pool_size = 32M
########  fin de l'ajout  #######

Pensez a redémarrer le Service Mysql pour prendre en compte les modifications.


Serveur NGINX

Si votre serveur utilise NGINX pour éviter des time_out au bout d’une minutes :

Par default le time_out est à 60  (60 secondes ) voici ma moficiation

Créer un fichier « mon_nginx »   dans le dossier  /etc/nginx.conf/ contenant :

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 6008;
## ne pas mettre autre chose + utilisera de la mémoire pour rien.
fastcgi_buffers 8 256k;
fastcgi_buffer_size 512k;

Pensez a redémarrer les services nginx pour prendre en compte les modifications :

 


Restaurer la Base MySQL avec une Sauvegarde de Magento

Restaurer avec la Sauvegarde par Magento : « Quelle Galère, dire que j’ai utilisé cette solution pendant plus d’un an » c’est Lent, Compliqué et pas fiable !

Si vous pouvez éviter,  j’ai crée un tutoriel qui explique comment restaurer en moins d’une minutes, simple et efficace : Copier Sauvegarder et Restaurer facilement une Base Mysql de Magento

Si vous n’avez pas le choix, si vous utilisez un Hébergement Mutualisé voici la procédure :


Restaurer une Sauvegarde Magento il faut :

  • Faire la sauvegarde dans Magento
  • Décompresser la sauvegarde
  • Éditer la sauvegarde
  • Supprimer Créer une Base Vierge
  • Découper la sauvegarde en plusieurs parties (éventuellement)
  • Restaurer (importer dans une nouvelle base)
  • Éditer core_config_Data (éventuellement)
  • .htaccess (éventuellement)

  1.Faire la sauvegarde dans Magento

Faire une Sauvegarde de votre Base de donnée dans magento Admin Panel>System>Outil>Sauvegarde

Puis cliquez sur gz pour récupérer cette sauvegarde

date
1195xx
BD
gz peut être décompressée avec 7-Zip

Si votre base est trop grosse, et que vous n’arrivez pas a sauvegarder, voici deux méthodes Beaucoup plus efficace mais qui voir : ce Tutoriel : Copier Sauvegarder et Restaurer facilement une Base Mysql de Magento


   .2 Décompressez La Sauvegarde

  • Vous munir d’un utilitaire de décompression comme Peazip.exe par exemple ou 7-zip.exe (vous trouvez ça dans google sur Filehippo.com ou Clubic)
  • Décompresser votre Sauvegarde

   .3 Éditer la sauvegarde

  • Avec un éditeur de texte comme Notepad ++  ou Geany par exemple ouvrez la sauvegarde.
  • Supprimer en début du fichier ce que j’ai barré (laissé le ; à la fin de chaque ligne)
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */ ;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */ ;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */ ;
/*!40101 SET NAMES utf8 */ ;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */ ;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
  • Supprimer en fin du fichier ce que j’ai barré (laissé le ; à la fin de chaque ligne)
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */ ;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */ ;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */ ;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */ ;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */ ;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */ ;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */ ;

Si votre sauvegarde est grosse pensez a compresser avant de la restaurer


.5  Supprimer / Créer une Base viège

Selon les cas:

  • Hebergement Mutualisé : Si vous êtes sur un Hebergement Mutualisé le plus simple est passer par le Management de votre compte pour supprimer la Base et la ré-créer. (si vous avez le droit a plusieurs Base MySQL, créer en une autre a coté de l’ancienne
  • Plesk : Si vous avez Plesk, (Pourquoi suivez-vous ce Tuto, car dans plesk il  y a plus simle ! voir celui-ci ) Plesk > Domaines > Gérer l’Hébergement >  Sites Web & Domaines > Base de Données > supprimer  Puis > Ajouter une nouvelle base de données.
  • phpMyAdmin : par phpMyAdmin il faut Sélectionner la Base > Cocher toutes les tables > Pour la sélection choisirSUPPRIMER   – Il faut recommencer plusieurs fois l’Opération,  ±5 fois – il n’y aura pas besoin de re-creer la base car elle existe deja, elle juste vide.

.5 Restaurer

Il existe plusieurs solutions pour restaurer votre Base MySQL Magento,

mysql -u LoginDeLaNouvelleBaseVierge -p NomDeLaBaseNouvelleBaseVierge < /CheminDeLaSauvegarde/sauvegarde.sql

Si vous ne pouvez saisir de ligne de commande, c’est que vous êtes sur un Hébergement Mutualisé, votre Hébergeur a du vous fournir un accès à phpMyAdmin pour gérer votre Base MySQL, si nous n’avez pas le minimum, il va falloir demander a votre Hébergeur quel solution il propose, ou changer d’Hébergement voir ce tuto.

  • phpMyAdmin :  > Sélectionnez la Base (elle doit être vide sans aucune table) > Importer > Parcourir > choisir votre fichier de sauvegarde > Exécuter
  • Si votre base est petite ça va passé 🙂
  • Si elle est un peu grosse, compresser-la, phpMyAdmin supporte les fichiers compressés 🙂
  • Si elle est trop grosse, seule une partie a été importé, il faut donc la découper 😦

.5 Découper en plusieurs parties à restaurer

Si elle est trop grosse, seule une partie a été importé, il faut donc la découper.

  • Avec PhphMyAdmin regardez la dernière table importée, notez son Nom et suprimez-la ( la dernière à été restaurée importé incomplète)
  • Avec un éditeur de texte comme Notepad ++  ou Geany par exemple
  • Ouvrez la sauvegarde. (la version  de la sauvegarde décompressée uniquement)
  • Laissez les Premières lignes, Puis supprimer tout jusqu’à Table que vous avez NOTEZ.
SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT;
SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS;
SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION;
SET NAMES utf8;
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0;

Suprimez tout....... 

         ......jusqu'à la Base de vous avez Noté

--
-- Table structure for table `Nom Table que vous avez Noté`
--
  • Sauvegardez le fichier sous « Partie_2.sql » (éventuellement compressez là)
  • phpMyAdmin :  > Sélectionnez la Base (elle doit être vide sans aucune table) > Importer > Parcourir > choisir votre fichier Partie_2.sql(ou .gz) > Exécuter
  • Recommencez au s’il faut une partie 3, Notez, supprimer, enregistrez sous, Importer, etc..

Si vous n’avez pas réussi à découper votre Base, c’est quelle trop grosse pour être ouvert par un editeur de texte. Vous n’avez pas d’autre choix que de l’importer/Restaurer pas une ligne de commande,  si votre Hebergement ne le permet pas, contactez votre Hebergeur, il peut certainement l’importer/restaurer moyenant quelques Euro, Je sais OVH propose ce type de service,  1and1  je ne crois pas. Si non c’est que votre Hébergement n’est pas adapté à Magento. Changez d’hebergement.


.7 Editer core_config_Data

il est nécessaire de modifier core_config_Data, que si vous avez restaurez ou copié votre Magento vers un dossier ou nom de domaine différents de l’original

  • Modifier avec PhpAdmin
  • Si vous utlilisez Plesk c’est ici Plesk>  Abonnements> votre site> Sites Web & Domaines>  Bases de données > Admin Web
  • Recherchez la Table :  core_config_Data
  • à la 3iem  et 4iem ligne :
web/unsecure/base_url http://VotreSite/VotreDossierMagento/
web/secure/base_url http://VotreSite/VotreDossierMagento/
  • Cliquez sur Modifier pour corriger.

Mise en Garde : il y a un bug dans  phpMyAdmin : Si vous avez modifié juste avant une autre base MySQL, votre navigateur garde en mémoire la session donc vous empêche de la modifier ! Solution : il faut juste vider l’historique de votre navigateur. Personnellement, j’utilise 5 Navigateurs (Opera, Safari, Chrome, Firefox, Explorer) , comme ça je peux modifier ou comparer plusieurs bases MySQL en même temps sans avoir d’interférence entre les deux :)


   .8 Editer .htaccess

il est nécessaire de modifier .htaccess, que si vous avez restaurez ou copié votre Magento vers un dossier différents de l’original

  • Sur votre Serveur il doit être là : /var/www/vhosts/VotreSite/httpdocs/VotreDossierMagento/
  • Ouvrir le Fichier .htaccess de votre dossier Magento avec un éditeur Geany sous linux, Notepad++ sous Windows..)
  • Rechercher dans ce fichier :  RewriteBase /VotreDossierMagento/
  • Modifiez pour mettre le nom du nouveau dossier



    .9 Editer local.xml

il est nécessaire de modifier local.xml, si vous avez restaurez ou copié vers une base Mysql différente afin d’indiquer à Magento les nouveaux identifiants :Nom de la Base, utilisateur  et Mot de Passe. (si vous ne voyez pas que quoi je parle, allez voir  le Chapitre 4.Copier la base de donner)

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Pour Mettre les informations concernant votre nouvelle Base MySQL de Magento:
  • LoginDeLABase : Le nom de l’utisateur de votre base MySQL/Magento
  • MotDePasse : Le mot de Passe de l’utilisateur
  • NomDelaBase : LE Nom de Votre nouvelle Base MySQL/Magento
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[localhost]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName  ![CDATA[admin]]  /frontName



Peut également aussi vous intéresser :


Déplacer – Copier Magento vers un autre Domaine ou Dossier

Pour Copier Votre Magento Il faut :

  1. Copier le dossier qui contient votre Magento
  2. Mettre les droit au nouveau dossier (777 / 755)
  3. Supprimer la cache /VotreMagento/var/cache
  4. Copier la base de donner
  5. Editer core_config_Data
  6. Editer .htaccess
  7. Editer /VotreMagento/app/etc/local.xml

1. Copier le dossier qui contient votre Magento

Plusieurs solutions selon les cas :

  • Copier avec fileZilla en n’oubliant pas de cochez Afficher les fichiers cachés du serveurs sans cela il va vous manquer des fichier. (Solution Lente)
  • En Ligne de Commande dans un terminal ou avec putty.exe (solution Ultra Rapide) avec la commande« cp – r Magento CopieMagento »
    cp -r /var/www/vhosts/votreSiteinternet/httpdocs/Magento  /var/www/vhost/votreSite/httpdocs/CopieDeMagento

ou bien: (c’est pareil)

cd var/www/vhosts/VotreSiteInternet/httpdocs
cp -r magento CopieDeMagento
  • En interface Graphique Copier/Collez :  si votre serveur est accessible avec FreeNx 

2. Mettre les droits au nouveau dossier Magento (777 / 755)

Plusieurs solutions selon les cas :

  • Avec filezilla c’est très long : Bouton droit de la souris sur votre dossier Magento et cochez : « Droit d’accès au fichier » > entrez 755 ou 777 et cocher « Recursion dans les sous dossiers, Appliquer à tous les sous-dossiers  et fichiers
  • Soluttion Ultra rapide ±2 secondes ! En ligne de commande dans un Terminal via interface FreeNx ou putty.exe, tapez : Chmod -R -777 /LeCheminDeVotreDossierMagmento  -Attention ne vous trompez pas vous pourriez planter votre Serveur (ne tapez jamais juste : Chmod -R 755 /)
    Chmod -R 777 var/www/vhosts/VotreSiteInternet/httpdocs/VotreMagento

Ou bien ça c’est pareil:

cd var/www/vhosts/VotreSiteInternet/httpdocs
ls
Chmod -R 777 VotreDossierMagento

Ou bien installer le fichier magento-cleanup.php

A télécharger ici : http://www.magentocommerce.com/wiki/_media/groups/227/magento-cleanup2.zip

Dans le dossier de votre magento, puis exécutez le depuis un Navigateur http://www.VotreSite.xx/votredossierMagento/magento-cleanup.php

(voir Tutoriel : changer les droits du dossier Magento 777 / 755)


3.Supprimer la cache /VotreMagento/var/cache

Indispensable ! Sans cela votre site va garder les anciens dossier, domaine et mémoire.

Plusieurs solutions selon les cas :

  • supprimer avec fileZilla en n’oubliant pas de cochez Afficher les fichiers cachés du serveurs sans cela il va vous manquer des fichier. (Solution Lente)
  • Utilisez magento-cleanup.hph

A télécharger ici : http://www.magentocommerce.com/wiki/_media/groups/227/magento-cleanup2.zip

Dans le dossier de votre magento, puis exécutez le depuis un Navigateur http://www.VotreSite.xx/votredossierMagento/magento-cleanup.php

  • En Ligne de Commande dans un terminal ou avec putty.exe (solution Ultra Rapide) avec la commande« rm – r  » Attention ne vous trompez pas vous pourriez tous supprimer sur votre serveur !
    rm -r  -f /var/www/vhosts/VotreSiteInternet/httpdocs/VotredossierMagento/var/cache

Ou bien: (c’est pareil)

cd var/www/vhosts/VotreSiteInternet/httpdocs
rm -r -f VotreMagento/var/cache

Ou bien :

  • Si votre serveur est accessible avec FreeNx
  • Sélectionnez  dans le dossier magento/var/cache et /session
  • Supprimez-les

J’ai un tutoriel sur Comment vider la cache de Magento


4. Copier la base de donner

Plusieurs solutions selon les cas :

  • Avec Pesk  Pour copier la Base sur le Même Serveur, dans le même domaine, dans Plesk il y a un bouton « Copier votre base Mysql » , Pesk>Accédez Domaines >Panneau de Contrôle de votre site > Sites Web & Domaines > Bases de données > « Selectionnez votre Base »>Cliquez Creer une Copie » (C’est pas super Rapide, mais c’est Efficace.)
  • En Ligne de Commande : Très Efficace, permet de copier d’un site a l’autre, d’un Serveur a l’autre très rapidement , suivez le tuto dédié ici
  • Avec la Sauvegarde par Magento : « Quelle Galère, dire que j’ai utilisé cette solution pendant plus d’un an » c’est Lent, Compliqué, et pas fiable ! …Suivre ce tuto ici

   5. Editer core_config_Data

il est nécessaire de modifier core_config_Data, que si vous avez restaurez ou copié votre Magento vers un dossier ou nom de domaine différents de l’original

  • Modifier avec PhpAdmin
  • Si vous utlilisez Plesk c’est ici Plesk>  Abonnements> votre site> Sites Web & Domaines>  Bases de données > Admin Web
  • Recherchez la Table :  core_config_Data
  • à la 3iem  et 4iem ligne :
web/unsecure/base_url http://VotreSite/VotreDossierMagento/
web/secure/base_url http://VotreSite/VotreDossierMagento/
  • Cliquez sur Modifier pour corriger.

Mise en Garde : il y a un bug dans  phpMyAdmin : Si vous avez modifié juste avant une autre base MySQL, votre navigateur garde en mémoire la session donc vous empêche de la modifier ! Solution : il faut juste vider l’historique de votre navigateur. Personnellement, j’utilise 5 Navigateurs (Opera, Safari, Chrome, Firefox, Explorer) , comme ça je peux modifier ou comparer plusieurs bases MySQL en même temps sans avoir d’interférence entre les deux 🙂

J’ai un tutoriel : core_config_data


   6 Editer .htaccess

il est nécessaire de modifier .htaccess, que si vous avez restaurez ou copié votre Magento vers un dossier différents de l’original

  • Sur votre Serveur il doit être là : /var/www/vhosts/VotreSite/httpdocs/VotreDossierMagento/
  • Ouvrir le Fichier .htaccess de votre dossier Magento avec un éditeur Geany sous linux, Notepad++ sous Windows..)
  • Rechercher dans ce fichier :  RewriteBase /VotreDossierMagento/
  • Modifiez pour mettre le nom du nouveau dossier

j’ai fait un Tutoriel sur : Comment Optimiser Magento .htacces , php.ini, my.cnf


    7. Editer local.xml

il est nécessaire de modifier local.xml, si vous avez restaurez ou copié vers une base Mysql différente afin d’indiquer à Magento les nouveaux identifiants :Nom de la Base, utilisateur  et Mot de Passe. (si vous ne voyez pas que quoi je parle, allez voir  le Chapitre 4.Copier la base de donner)

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Pour Mettre les informations concernant votre nouvelle Base MySQL de Magento:
  • LoginDeLABase : Le nom de l’utisateur de votre base MySQL/Magento
  • MotDePasse : Le mot de Passe de l’utilisateur
  • NomDelaBase : LE Nom de Votre nouvelle Base MySQL/Magento
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[localhost]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName  ![CDATA[admin]]  /frontName

Pensez à Vider votre Corbeille Partition 2 /var .Trash-0 sous Linux

Si vous avez deux partitions comme dans 99% ces cas des serveurs Linux Ubuntu pour mon cas.

A chaque fois que vous supprimez des fichiers dossiers etc… ils vont dans une corbeille différente  de celle de Bureau !

Et Oui : ils sont tous  dans var/.Trash-0   (fichier caché donc CTRL+H pour le faire apparaître)

Donc si vous ne pensez pas a videz var/.Trash-0, vous risquez très vite de saturer votre seveur.

.Trash-0 correspond à la poubelle du root pour la partition courante

Copier – Sauvegarder et Restaurer facilement une Base Mysql de Magento

introduction: La base mySQL de Magento grossie assez vite.  la procédure de sauvegarde de Magento est très lente et il n’existe pas de procédure de restauration !  Il faut impérativement trouver des solutions plus efficace.

 La sauvegarde  par Magento devient vite problématique, ralentissement du serveur, voir plantage, etc..

La restauration est tout aussi difficile, si  le Fichier est >2048Mo, on est obligé d’éditer le fichier, le découper, bref… c’est un calvaire 😦

La solution : Avec quelques commandes MySQL à taper dans un terminal ou avec Putty.exe on peut très facilement faire Sauvegarde, Restauration, Copie des bases de données MySQL de Magento en quelques secondes, un vrai bonheur 🙂 


Sauvegarder

la Base MySQL de Magento votre base de données Mysql de Magento en quelques secondes !

Vous devez connaitre vos identifiants base de données : Login, Password et nom de la base de donnés, Ils sont dans le fichier local.xml de magento/app/etc/local.xml
  1. mysqldump -u LoginBase -pMotDePasse  NomBase>/var/www/vhosts/Domaine/httpdocs/magento/var/backups/sauvegarde_import.sql
  • LoginDeLaBase : c’est le nom de l’utilisateur de la base Magento, celui que vous avez crée lors de la création de votre base Mysql
  • MotDePasse : c’est le mot de passe pour accéder a votre base MySQL de Magento,  celui que vous avez crée lors de la création de votre base MySQL   – Remarque : »entre -p et votre MotDePasse  il y a pas d’espace, c’est normal »
  •  NomDeLaBase : Comme sont nom l’indique c’est le nom de votre base Mysql Magento
  • /var/www/vhosts/NomDeDomaine/httpdocs/magento/var/backups  : C’est le chemin ou vous voulez mettres votre Sauvegarde. je conseille de la placer dans un dossier que vous pouvez récupérer en ftp
  • Par exemple : /var/www/vhosts/NomDeDomaine/httpdocs/magento/var/backups
  • sauvegarde_import.sql : Bien évidement le nom que vous voulez donner à votre sauvegarde

  2. Il faut impérativement changer les droits du Fichier de sauvegarde pour qu’il puisse être récupéré, copier en FTP et réutilisable  en restauration.

chmod 777 /var/www/vhosts/NomDeDomaine/httpdocs/magento/var/backups/sauvegarde_import.sql

  3.Compresser votre Fichier, vous pouvez réduire ça taille par x10

gzip -f -9 /var/www/vhosts/NomDeDomaine/httpdocs/magento/var/backups/sauvegarde_import.sql

Restaurer

votre base de données Mysql de Magento en quelques secondes, tapez dans Putty ou un terminal :

mysql -u LoginDeLaBase -p NomDeLaBase < /CheminDeLaSauvegarde/sauvegarde.sql

ou si vous l'avez compressée :
gunzip -f /CheminDeLaSauvegarde/sauvegarde.sql.gz
mysql -u LoginDeLaBase -p NomDeLaBase < /CheminDeLaSauvegarde/sauvegarde.sql

Remarque : Pour utiliser une copie votre Magento dans un autre dossier ou serveur, il va faloir modifier aussi, core_config_data, Local.xml, .htaccess..  j’ai fait un tuto ici..


Copier / Dupliquez

vers une nouvelle base de données Mysql/ Magento.

  1. Créer une base vierge, un utilisateur et un mot de passe  dans votre Serveur : Avec Plesk  : Connectez vous a Plesk >Domaines>Gérer l’hébergement>Sites & Domaines>Bases de données>Ajouter une nouvelle base de données>« NomDeLaBase »
  2. >Ajouter un Nouvel Utilisateur de base de données> « Utilisateur +Mot de passe »
  3. Dans un Terminal ou putty.exe, tapez :
    mysql -u LoginDeLaNouvelleBaseVierge -p NomDeLaBaseNouvelleBaseVierge < /CheminDeLaSauvegarde/sauvegarde.sql
    
    ou si vous l'avez compressée :
    gunzip -f /CheminDeLaSauvegarde/sauvegarde.sql.gz
    mysql -u LoginDeLaBase -p NomDeLaBase < /CheminDeLaSauvegarde/sauvegarde.sql

Remarque : Pour utiliser une copie votre Magento dans un autre dossier ou serveur, il va falloir modifier aussi, core_config_data, Local.xml, .htaccess..  j’ai fait un tuto ici..


Créer un Script pour Automatiser la sauvegarde.

Pour exécuter ces quelques lignes , le plus simple est de faire un script  comme ça

#!/bin/sh
# La première ligne sert à spécifier quel shell tu veux excéuter. ici sh
# pour executer un script il faut
# 1) changer c'est droit pour devenir executable:  chmod 777 NomDuScrip.sh
# 2) puis l'executer : ./NomDuScrip.sh

echo "sauvegarde en cours..."
mysqldump -u Login -pMotdePasse NomBase >/VotreChemin/Sauvegarde.sql
chmod 777 /VotreChemin/Sauvegarde.sql
gzip -f -9 /VotreChemin/Sauvegarde.sql

echo "Terminée"

…Ici un tuto comment faire et exécuter un script simple


Sauvegardes directement par Plesk :

Utilise dans certains cas, car ce n’est pas vraiment un sauvegarde, c’est plutôt une copie :

  • Avec Pesk : Pour copier la Base sur le même serveur et même domaine,  il y a un bouton « Copier votre base Mysql » ,  Dans Pesk>Accédez Domaines >Panneau de Contrôle de votre site > Sites Web & Domaines > Bases de données > « Sélectionnez votre Base »>Cliquez Créer une Copie…  « …C’est pas rapide, mais c’est Efficace.

Remarque : Pour utiliser une copie votre Magento dans un autre dossier ou serveur, il va falloir modifier aussi, core_config_data, Local.xml, .htaccess..  j’ai fait un tuto ici.


Planifier des Sauvegardes Magento :

L’idéal est de créer une tache planifiée (Cron) pour exécuter ces quelques lignes automatique. Moi j’ai Horreur de Cron, alors j’utilise Tâche Planifié De Gnome avec FreeNx, 

Voir ce tutoriel : Comment créer un script  sauvegarde de la base mysql de Magento

Il vous manque mcrypt pour Magento sur un serveur Ubuntu.

c’est très simple :

Soit vous accédez à votre serveur avec un Terminal ou par Putty.exe (votre hébergeur a du vous fournir Login et password)

Tapez :

sudo apt-get install php5-mcrypt

Enfin redémarrez Apache

sudo /etc/init.d/apache2 restart

Soit vous accédez a votre Serveur en mode Graphique (via FreeNx par exemple)

Cherchez mcrypt dans la Logithèque Ubuntu : MCrypt module for php5

Puis la puis redémarrer Apache ou votre serveur .

sudo /etc/init.d/apache2 restart

A2) Envoyer / installer sa licence Plesk

Si votre serveur est tout neuf, votre hébergeur a du enregistré pour vous la licence, mais après un ré-installation d’un serveur la Licence Plesk ne s’active pas automatiquement. il faut donc l’a ré-enregistré.

Votre Hebergeur doit vous fournir cette Clé.

Chez
OVH c’est très simple : Dans votre manager OVH  allez à :

Accueil > Serveurs dédiés > Services > Licence Plesk > Téléchargement

Télécharger votre licence.

Enfin aller dans votre, Plesk > Outils > Envoyer la licence > Parcourir > sélectionnez votre licence.

Chez d’autres Hébergeurs, il faut leurs demander comment télécharger votre licence, pour le reste, la procédure est identique.

Terminée 🙂

installer Magento sur votre Serveur / Hebergement

Nous supposons que votre serveur est prêt pour recevoir Magento  (si non voir notre
Tuto :  Serveur ideal pour Magento de A à Z
)

1) Téléchargez Magento chez Magento : http://www.magentocommerce.com/download

________________________________________________________

2) décompressez les fichiers et copiez le dossier Magento sur votre Site.

– Soit en Ftp via FileZilla, mais c’est long (sans oublier de cochez « Forcer l’affichage des fichiers cachés)

– Soit copier/coller avec via interface FreeNx directement là (en 2 minutes) :

var/www/vhosts/VotreSiteInternet/httpdocs

________________________________________________________

3) Mettre les droits lectures/écritures en 755  (ou 777 en mode tests uniquement)

Avec filezilla c’est très long : Bouton droit de la souris sur votre dossier Magento et cochez : « Droit d’accès au fichier » > entrez 755. et cocher « Recursion dans les sous dossiers, Appliquer à tous les sous-dossiers

Ou en ligne de commande dans un Terminal via interface FreeNx ou putty.exe

Tapez : (ça dire 3 secondes !) Chmod -R -755 /CheminDossierMagmento exemple :

Chmod -R 755 var/www/vhosts/VotreSiteInternet/httpdocs/magento

J’ai un tutoriel sur les droits ici : Comment mettre les droit du dossier-magento 777 755

_______________________________________________________

4) Créer une base de données Mysql vièrge et un utiliseur Mysql + mot de passe sur votre Serveur.

– Si vous avez Plesk ça va prendre 10 secondes : Connectez vous a votre Serveur via Plesk

– Accédez Domaines >Panneau de Contrôle de votre site > Sites Web & Domaines > Bases de données > Ajouter une nouvelle Base de données

-Donnez un Nom a la base : pour l’exemple on va l’appeler BaseMagento

+Ajouter un nouvel utilisateur de base de données : pour l’exemple on va l’appeler : user

et enfin le mot de passe on va l’appeler : passe

Et voila la base est crée 🙂

_______________________________________________________

5)  On termine l’installation de Magento :

On ne peut pas faire plus simple: tapez http://votreSite/magento  

Suivez les instructions a l’écran .. exemple à partir de la 2iem Minutes de cette vidéo:  http://www.youtube.com/watch?v=V2SffdBUbm8

Choisissez :

Locale : Français (france)

Time Zone : Romance Standard Time (Europe/Paris)

Default currency : euro

>Page Suivante

Host* : vous laissez localhost

Databse-Name : le nom de votre base mysql dans nom exemple BaseMagento

User Name : le nom de l’utilisateur de la base Mysql dans nom exemple : user

Laissez le reste, vous pouvez juste cocher Use Web Server (apache) Rewrites

>Page Suivante

Nom d’utilisateur, et mot de passe pour accéder a l’admin de magento.

>Continue

Votre Admin est là : http://votreSite/magento/admin

Votre site est à : http://votreSite/magento/

installation terminée 🙂

il n’y a plus qu’a suivre a l’écran … 🙂

D) Vérifiez que votre Serveur est compatible Magento (Ubuntu 12.04)

Ubuntu 10.04 à tout ce qu’il faut pour Magento  voir mon article complet(serveur ideal de A à Z )

Nous allons vérifier que votre serveur supporte Bien Magento :

1) Récupérez  le fichier magento-check.zip que va testez votre serveur ici : http://www.magentocommerce.com/knowledge-base/entry/how-do-i-know-if-my-server-is-compatible-with-magento

2) Décompressez le puis, copiez le en FTP sur votre serveur le fichier  magento-check.php

3) Executez-le à partir d’un navigateur : http://www.Votresite.fr/magento-check.php

Il doit apparaître :


Votre serveur ne répond pas aux exigences suivantes afin d’installer Magento
Les exigences suivantes échoué, s’il vous plaît contactez votre fournisseur d’hébergement afin de recevoir de l’aide à satisfaire aux exigences du système de Magento:

  • Il vous manque l’ mcrypt extension de

Les exigences suivantes ont été atteints:

  • Vous avez PHP 5.2.0 (ou supérieur)
  • Mode sans échec est hors
  • Vous avez MySQL 4.1.20 (ou supérieur)
  • Vous avez le curl d’extension
  • Vous avez la liberté d’extension
  • Vous avez le gd d’extension
  • Vous avez le hachage d’extension
  • Vous avez le iconv d’extension
  • Vous avez le pcre extension de
  • Vous avez le PDO d’extension
  • Vous avez le pdo_mysql d’extension
  • Vous avez le simplexml d’extension

il vous manque normalement : mcrypt

4) pour l’installer c’est très simple, cherchez mcrypt dans la Logithèque Ubuntu : MCrypt module for php5

Puis tapez dans un Terminal ou redémarrer votre Serveur :

sudo /etc/init.d/apache2 restart

En ligne de commande avec Putty.exe ou un terminal

sudo apt-get install php5-mcrypt

puis redémarrage d’Apache

sudo /etc/init.d/apache2 restart

soit complèment le Serveur ( normalement ce n’est pas nécessaire )

reboot

5) S'il vous manque curl :

sudo apt-get install php5-curl;
sudo /etc/init.d/apache2 restart;

6) relancez dans un navigateur de Test de compatibilité à partir d’un navigateur : http://www.Votresite.fr/magento-check.php

Voila votre serveur est opérationnel 🙂

 

_________________________________________________________________________

Penser a vérifier le propriétaire du dossier www  (/var/www)

sous Plesk pas utile

sous LAMP : penser a changer root pas le bon propriétaire

Exemple :

sudo chown utilisateur:MotDePasse /var/www

 

C2) Permuter entre deux serveurs avec l’IP FailOver OVH sous Plesk

Si vous changez les DNS de vos noms de domaines pour basculer vers un nouveau serveur, la diffusion prend 48H pendant ce temps vous ne savez pas sur quel serveur vous serrez.

Grace à Ip FailOver d’OVH, vous pouvez permuter d’un serveur à l’autre en quelques Minutes. OVH va vous fournir une adresse IP que vous pourrez basculer d’un serveur a l’autre en quelques minute.
+ d’info: http://www.ovh.com/fr/serveurs_dedies/ip_FailOver.xml

Si votre site n’est pas encore en production, ça va simplifié les choses,  mais si comme moi, vos sites sont déjà actifs, il faut prendre quelques précautions car la première fois  ça prendra 48H après vous pourrez basculer de l’un a l’autre en quelques minutes.

Mise en place :

1 ) Avec le Manager OVH créez une IP FailOver qui servira d’adresse IP pour vos domaines

Manager OVH>serveur>service>IP FailOver>CREER

2) Pointez l’Ip FailOver vers le server N°2 (celui qui n’est pas encore en production)

Manager OVH > serveur>service > IP FailOver>Basculer une IP Fail-Over vers un autre serveur

3) Ajouter dans Plesk  des 2 serveurs l’adresse IP FailOver :

Plesk > Outils et Paramètres > Gestion des Adresses IP > ajouter une adresse !

si vous mettez le sous masque identique a votre IP de Base votre serveur va PLANTER au prochain démarrage Il faut ajouter derrière l’ip /32

IP >    xxx.xxx.xxx.xxx/32  

le /32 va ajouter 255.255.255.255   c’est normal.

4) Si votre domaine n’est pas encore crée :

Dans Plesk : Allez > Domaine :il est indiqué « Afin d’ajouter un domaine pour héberger votre propre site Web : créer votre abonnement personnel en premier »  

Cliquez sur  Ajouter un domaine ou  créer    puis  sélectionner votre Ip-FailOver (voir ci-dessous)

Pour info Plesk a crée un dossier : var/www/vhosts/VotreSiteInternet/httpdocs

5) paramétrer votre domaine pour utiliser votre IP-Failover :

Dans Plesk >  l’espace du domaine « Accès à l’hébergement Web » sélectionnez l’adresse IP FailOver.

Pointer vos noms de Domaine vers cette nouvelle IP (DNS) .. Attention la première fois ça peut prendre 24/48H de propagation… après vous pourrez permuter en moins de 10 minutes.

6) Pour permuter les serveurs rien de plus simple :

-Dans Plesk (du serveur de destination)  >  l’espace du domaine « Accès à l’hébergement Web > sélectionnez l’adresse IP FailOver.

-Dans Manager OVH serveur > service > IP FailOver > Basculer une IP Fail-Over vers un autre serveur.

Terminé 🙂


Si vous n’avez pas de ip FailOver, j’ai aussi ce tutoriel ici : Permuter entre deux serveurs magento

B2) Mettre à jour Plesk 10 sur un Serveur Ubuntu 10.04

Je dé-conseille de mettre à jour plesk sur un serveur de production, si ce ne pas indispensable, si vous devez le faire, faites une sauvegarde avant.

Lors de la préparation du serveur là oui,  mettez TOUT à jour, autant commencer avec un serveur à jour.

Dans plesk c’est très simple, s’il y a une mise à jour a faire,  en général c’est précisé en avertissement dès que vous êtes connecté, donc il n’y plus qu’a suivre les instructions.

si non dans Plesk allez :

> Outils & Utilitaires > Mise à jour > Installer ou mettre à niveau le produit

Attention lisez les Avertissements, par exemple avec Serveur sous Ubuntu  il est nécessaire de désactivé apparmor .

soit :  en ligne de commande : (a l’aide de Putty.exe ou un terminal)

sudo /etc/init.d/apparmor stop
sudo update-rc.d -f apparmor remove
reboot

soit : Vous avez accès à votre serveur via a une interface graphique (FreeNX) il suffit d’aller dans la Logithèque Ubuntu et de dé-installer :

  • AppArmor
  • AppArmor Library Perl bindings
  • Changehat AppArmor libray
Puis redémarrer votre serveur
reboot

Afin dans Plesk :

> Outils & Utilitaires > Mise à jour > Installer ou mettre à niveau le produit

TERMINEE.

Source : http://download1.parallels.com/Plesk/PP10/10.4/release-notes/parallels-plesk-panel-10.4-for-linux-based-os.html#2

C3) Utiliser un Serveur OVH + Plesk & garder Domaines & Emails chez 1and1 ou tout autres hebergeurs

Votre Serveur et Plesk gèrent très bien les noms de domaines et vos Emails, mais je ne vous conseille pas de le faire.

Pourquoi ?

Imaginez que votre serveur soit planté ! Non seulement votre site est à l’arrêt, mais en plus vous ne recevez plus aucun email voir même vous avez perdu tout vos emails !! aïe, aïe, aïe …

-Pour  transférer votre site vers un autre serveur il faudra également transférer  et re-créer tous vos emails,  c’est beaucoup de boulot qui pourrait être évité.

-Et le paramétrages de vos Serveurs sera hyper simplifié.

La solution : 

Laisser votre Herbegeur s’occuper de vos emails et nom  de domaines, OVH comme 1AND1 font ça très bien.

il vous suffit de vous connecter au Manager de votre abonnement et de précisez a vos noms de domaines l’ IP de votre Serveur.  ( ou IP FailOver si vous avez créer une Ip FailOver ce que je conseille voir : Tuto Ip FailOver )


Si vos domaines et emails sont chez OVH

allez dans le manager OVH > Domaine & DNS > Zone DNS

Sélectionnez type A > Modifier > Destination : « Saisissez l’adresse IP de votre Serveur »   (ou IP FailOver si vous avez créer une Ip FailOver ce que je conseille voir : Tuto Ip FailOver )

Sur Votre serveurs avec Plesk. > Domaine/abonnement > il faut changer :

1) >Mail > Changer les parametres > décocher « Activer le service de messagerie sur le domaine

2) > Site Web & Domaines > Paramêtre DNS > »Désactiver le service DNS » (Levier vers le bas


Si vos domaines et emails sont chez 1AND1 :

Allez dans  > Accè à l’Epace client 1And1 > Configuration des domaines > Cochez le domaines > cliquez sur DNS > Modifier les paramètre DNS > Paramètres DNS avancés > Cochez Autre adresse IP « Saisissez l’adresse IP de votre Serveur »   (ou IP FailOver si vous avez créer une Ip FailOver ce que je conseille voir : Tuto Ip FailOver )

Sur Votre serveurs avec Plesk. > Domaine/abonnement > il faut changer :

1) >Mail > Changer les parametres > décocher « Activer le service de messagerie sur le domaine

2) > Site Web & Domaines > Paramêtre DNS > »Désactiver le service DNS » (Levier vers le bas)


Variantes :

Pour ceux qui ne veulent pas « Désactiver le service DNS »   et juste laisser les emails gérer par leur hébergeur,

il faut modifier la ligne Mx :

Dans >site Web & Domaines > Paramêtre DNS 

Juste changer à :  MX 10  > « Serveur de messagerie Exchange* » mail.votreNomdedomaine.fr  par ceux données par votre herbergeur:

pour OVH  saisissez: mx1.redirect.ovh.net

Pour 1AND1 il y en a deux : 1and1 : mx00.1and1.fr

et créer un second : mx01.1and1.fr.


Serveur idéal pour Magento de A à Z (sous Ubuntu 10.04 + Plesk OVH)

 Comment héberger Magento ?

  • Hébergement Mutualisé : Au départ, j’ai essayé d’installer Magento  sur Hébergement Mutualisé standard (de type 1and1) qui coute quelques Euros par mois. Je me suis rendu compte immédiatement que c’était presque impossible,  en tout cas inexploitable, des lenteurs à chaque requête, erreur « Timeout » etc…
  • Serveur Virtuel: J’ai donc pris un Serveur Virtuel (toujours 1and1) sous Centos + Plesk. c’est pas cher, ça m’a bien servie pour apprendre et démarrer mon site e-commerce sous Magento. Cette solution est économique (19€/mois pour 4Go/40Go) . Mais 1and1 c’est Zero Service, le support ne vous aidera pas, donc pour installer les extension Mysql, les bonnes versions, les reglages…  si vous n’êtes pas connaisseur, c’est le parcours du combatant.
  • Serveur Dédier OVH 4Go/500Go (49€/mois): Enfin un Serveur qui va bien ! Il faut quand même le paramétrer, le support technique OVH répond au question (ils ont des techniciens super aimable, mais pas tous) , donc après quelques jours on arrive avoir un bon Serveur qui tourne, c’est ce Serveur que avons utilisé en Production jusqu’a  500 visites jours et 3500 pages en moyens jours.
  • Mais, après 1 ans, notre base MSQL a grossit et des lenteurs commencent à ce faire sentir, c’est la mémoire vive qui est insuffisante, donc nous avons changé pour un Serveur Dédier OVH 16Go/2x 120GO SSD
  • Serveur Dédier OVH 16Go/2x 120GO SSD (69€/mois): Le serveur idéal pour Magento.  j’ai choisi l’abonnement Serveur dédié OVH  Superplan 2011 avec Ubuntu 10.04 server + Plesk 10.3 , rapide, avec suffisamment de mémoire pour paramétrer la cache de Mysql et de php.

A ) Choix de la Distribution

Ubuntu 10.04 server + Plesk 10 – Bonne communauté Francophone, version très complète avec tous ce qu’il faut pour Magento. bien-sur ça fonctionne aussi sous Centos (distribution souvent proposé) mais il y a + d’extension à ajouter ou a mettre à jour l’utiliser avec Magento.  +Plesk 10  bien pratique pour administrer facilement votre Serveur, Base Mysql, Ftp et vos sauvegardes.


B ) Paramétrage du Serveur OVH pour Magento

Putty : Utilisez PUTTY pour acceder à votre Serveur, indispensable, c’est la console pour tapez des instructions sur votre serveur.

– Installer sur votre PC (Local) l’application « putty.exe » (vous trouverez ça sous google)

connectez-vous avec putty, vos identifiants ont été fournis par OVH. iP/Login/password.

B1) Votre licence Plesk est-elle enregistré ?

-Connectez vous à Plesk avec vos identifiants fournis par votre Hébergeur.

Si au démarrage Plesk vous demande d’enregistrer/installer la licence procédez ainsi : voir tuto ici

B2) Votre Plesk est-il à jour ?

Autant commencer avec un serveur à jour.

Voici un petit tuto ici Comment mettre à jour votre Plesk avant de commencer à configurer votre serveur

B3) Installer une interface Graphique Gnome

Pour faciliter la vie surtout si vous ne connaissez pas bien les lignes de commandes linux.

Tapez : sudo apt-get install ubuntu-desktop

Suivez les instructions à l’écran,  si dans un cadre Bleu, il vous demande d’écraser  des fichiers de configurations, répondez NON, jusque là rien de bien compliqué.

B4) FreeNX : installer une connexion a distance

un peu comme Terminal serveur de Windows mais pour linux pour acceder au serveur dans un environement Graphique, FreeNx remplacera la console austère putty par une belle page comme Windows, néanmoins les lignes de commandes s’avère souvent indispensable et bien plus puissante que l’interface graphique.

Explication  d’installation de FreeNX voir: Comment installer NX NO-Machine Freenx avec un serveur ubuntu-10-04

B5) Quelques Utilitaires pour facilité la vie

Maintenant qu’on utilise l’interface graphique gnome Ubunntu avec FreeNx on va en profitez pour installer très simplement les outils indispensables :

Dans Ubuntu cliquez sur : Applications >Logithèque Ubutnu : rechercher :

« planifiées » pour installer Tâches planifiées (gnome-schedule) Super pratique pour gérer vos taches crons

installez l’éditeur Geany  indispensable pour editer un fichier de configuration, comme  my.cnf par exmple etc…

installez aussi Filezilla si vous avez de besoin de teléchargement direct entre serveur.

Dans Filezilla, n’oubliez pas dans le menu >serveur de cocher « Forcer l’affichage des fichiers cachés »  afin de voir et de copier aussi les fichiers cacher comme .htacces

mais aussi : nautilus-terminal indispensable  : (nécessite quelques manip)  bouton-droit sur Menu d’ubuntu> Editer les Menus>Outils système>cochez Editeur de configuration 

Voir : http://marcet.technofil.fr/2009/06/09/nautilus-open-terminal/  et http://www.simple-linux.com/fr/ajouter-un-terminal-dans-nautilus-avec-nautilus-terminal/

Dé-installer/supprimer tout ce qui na rien a faire sur un server :

Solitaire, Démineur, etc.. n’en retirez pas trop..   ne retirez pas ceux qui vous propose de supprimer des librairies supplémentaires ou qui sont lié à d’autres applications, dans le doute,  laissez, ça évite des erreurs.


C1) PLESK 10

C’est avec plesk que l’on va paramétrer les noms de domaines, emails (éventuellement mais je ne le conseille pas), base Mysql, sauvegarde s etc…

C2) Ajouter une IP FailOver. Ovh vous permet d’ajouter gratuitement une IP supplémentaire que vous pourrez basculer d’un serveur a un autre en quelques minutes. Ce n’est pas indispensable, mais c’est tellement pratique. imaginez que vous ayez un Serveur de Production avec votre site, et un Serveur de Test ou de secours.  en cas de panne vous pourrez très facilement basculer d’un serveur a l’autre.

Autant mettre immédiatement en place une IP FailOver, car si le site est déja en production la mise en place peut perturber votre site.  Voici un tuto a suivre ici…

C3) Gestion des Noms de Domaines et Emails :

 Votre Serveur et Plesk gèrent très bien les noms de domaines et vos Emails, mais je ne vous conseille pas de le faire.

Pourquoi ?  Imaginez que votre serveur soit planté ! Non seulement votre site en a l’arrêt, mais en plus vous ne recevez plus aucun email voir même vous avez perdu tout vos emails !! aïe, aïe, aïe …

-Pour  transférer votre site vers un autre serveur il faudra également transférer  et re-créer tous vos emails,  c’est beaucoup de boulot qui pourrait être évité.

-Et les réglages de vos Serveurs sera hyper simplifié

La solution :  Laisser votre Hebegeur s’occuper de vos émails et nom  de domaines, OVH comme 1AND1 font ça très bien. voir mon tutoriel  : DNS nom de domaine & email ici 

C4) créer votre domaine sous Plesk : 

automatiquement un dossier sera créé :  var/www/vhosts/VotreSiteInternet/httpdocs

Pour cela dans Plesk : Allez dans Domaine :il est indiqué « Afin d’ajouter un domaine pour héberger votre propre site Web : créer votre abonnement personnel en premier » ou bien cliquez sur Ajouter un domaine et Suivez les instructions, c’est très simple…

Si vous utilisez une IP Failover (comme je l’ai expliqué ci-dessus) pensez a ajouter l’IP-FailOver puis pointer votre domaine dessus   Comment créer une IP FailOver…

C5) Créer un Compte FTP afin d’effectué des transferts vers votre siteWeb.

Dans Plesk > Domaines > Ouvrir Panneau de Contrôle (de votre domaine) > Ste Web & Domaines > Accès FTP > Cliquez Créer un compte FTP > Saisissez un nom de compte (Login) et u mot de passe (password)

Pour se connecter en FTP il suffira d’installer FileZilla sur votre Pc de renseigner

Hote : LeNomDeVotreDomaine  > Type d’authentification : Normal > Identifiant : Saisir l’identifiant que vous venez de creer > Mot de passe : saisir votre mot de passe que vous venez de créer.

Dans FileZilla pensez a cocher dans le menu > Serveur > Forcer l’affichage des fichiers cachée  afin de voir de voir entre autre .htaccess


D) Vérifiez que votre Serveur est compatible Magento

Nous allons vérifier que votre serveur supporte bien Magento, Ubuntu 10.04 à tout ce qu’il faut pour Magento, il faut juste installer MCrypt module for php5,  Comment Vérifier la compatibilité de Magento sur un Serveur :


E) installer Magento sur votre Serveur.

E1) Si votre but est de mettre un Magento vierge, rien de plus simple Comment installer Magento sur un serveur


F) Transférer / Copier votre Magento sur le  serveur.

F1) Copier la Base de données :

j’ai fait plusieurs explication pour tranférer la base de données MySQL de Magento, selon votre cas ici :

F2) Copier Le dossier, et mettre à jours paramètre:


G) Optimiser votre serveur Magento, votre hébergement pour Magento

Les sujets qui vont êtres abordés :

  • .htaccess
  • php.ini
  • php_admin_value memory_limit,
  • php_value max_execution_time
  • my.cnf

j’ai fait un Tuto Comment Optimiser Magento  :


H) Créer un Script de Sauvegarde de la Base Mysql de Magento

j’ai fait un Tuto Comment créer un Script de sauvegarde pour Magento


I) Créer des taches Planifiées pour sauvegarder Magento Mysql tout les soirs..

j’ai fait un Tuto Les taches Planifiées…


j) Créer des Sauvegardes Planifiés avec Plesk

voir ce  Tutoriel planifier un sauvegarde d un serveur plesk


K) Créer un Script de Sauvegarde du Dossier FTP de Magento.

j’ai fait un Tuto : Comment créer un Script-pour-sauvegarder-en-fpt


L) Modifier le Chemin du Back Office /admin/ de Magento

Pour des raisons évidente de Sécurité il fait changer le Chemin d’accès a l’admi de magento

Il faut modifier un ligne dans le Fichier loca.xml , j’ai fait un Tutoriel d’explication : Comment Modifier le Chemin du Back Office /admin/ de Magento ici


M) Nettoyez les Log, Optimiser et réduire

la Base Mysql Magento 

j’ai fait un Tuto : Comment nettoyer les Log de Magento facilement


N) Lancer en Cron.php ou Cron.sh de Magento et Planifier

j’ai fait un Tuto : Comment Planifier et exécuter cron.php et cron.sh de Magento


O) Pensez à Vider votre Corbeille Partition 2 /var .Trash-0 sous Linux

j’ai fait un Tuto : Comment faire de la place sur le disque dur de votre serveur


P) Script Nettoyer, purger Magento Régulièrement.

j’ai fait un Tuto : Comment Faire un script des taches régulières pour Magento


Q) instructions et Script Mysql pour Magento

j’ai fait un Tuto : utilisation des lignes commandes mysql pour magento


R) Les quelques lignes de commandes Linux indispensables a connaitres

ici : linux quelques lignes de commandes à connaitre:


S) Automatiser la copie de la base MySQL Magento entre deux Serveurs 

j’ai fait un tuto : Comment copier base mysql Magento entre deux serveurs


T) Utiliser une Base MySQL Magento distante ou sur un autre Serveur

j’ai fait un tuto : Comment connectez Magento à une Base de données Mysql d’un serveur distant.


U) Cloner Tout Magento Base + Dossier entre deux serveurs :

j’ai fait un tuto : Comment Copier Magento Base + Dossier + Modification Core_config_data et .htaccess et local.xml automatiquement



V) Purger la mémoire de votre Serveur régulièrement

Purger la cache mémoire RAM d’un Serveur linux.

Dans certains cas il peut être utile de vider la cache en mémoire RAM de votre serveur Linux, ça peut libérer jusqu’à 70% de mémoire Vive!

Pour forcer le noyau à abandonner la page de cache, inode dentry caches sans redémarrage. il faut d’abord être sur que toutes les écritures disques en caches soit écritent, avec la commande SYNC puis utilisez la commande  drop_caches

j’ai fait un tuto https://erickranich.wordpress.com/2011/12/13/purger-la-cache-memoire-ram-dun-serveur-linux/ 


W)…S’il vous manque quelques Choses, Proposez moi 


X)


Y)


Z)