Cloner un site TYPO3 distant en local avec GIT

Prérequis :

C'est parti !

Lancer un terminal en mode root.

Aller dans le répertoire /var/www/ OU trop la frime, on clone le site dans notre compte utilisateur Ubuntu (/home/username/) et apres on fera un lien symbolique dans /var/www

Comme ca en sauvegardant notre /home on sauvegardera aussi les sites en dev ! ;)

Sur le serveur local :

Lancer la commande suivante :
git clone ssh://USER@IP:PORT/var/www/chemin/vers/repertoire/site/.git

Et c'est parti !

Anoter : Quel que soit l'utilisateur... utiliseéen ssh, il faut mettre le chemin complet vers le repository .git, donc :

/var/www/etc...

Mettre à jour la config Apache2 pour avoir un "nom de domaine" de dev en local

Éditer le fichier /etc/hosts

Ajouter le nom auquel doit répondre le site en local.
Exemple:

127.0.1.1    antiquebeats
127.0.1.1    caj

Créer le Virtualhost

Ça se fait par ici : /etc/apache2/sites-available

Exemple de fichier virtualhost. L'extension du fichier doit être .conf. A noter la directive pour gérer le bug avec opcache sous Ubuntu 13  :

<VirtualHost *:80>
        ServerName caj
        ServerAlias www.caj
        ServerAdmin     monAdresse@email.fr

        DocumentRoot "/var/www/caj/web"
    <Directory "/var/www/caj/web">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <IfModule mod_php5.c>
     php_value opcache.revalidate_freq 0
    </IfModule>
</VirtualHost>

 

 

Créer les liens symboliques vers les sources de TYPO3

On utilise un seul répertoire sources par version de TYPO3 pour tout les sites locaux.

Liens vers typo3_src

Faire le iens avec nautilus lancer en mode super-utilisatuer (sudo -i)

Aller dans le répertoire contenus les sources,par exemple:
/var/www/6_1

Faire un clique droit et créer un lien

Copier-coller le lien dans le repertoire du nouveau site

Le renommer typo3_src

Liens vers typo3 et index.php

Dans un terminal; aller dans le répertoire du nouveau site. Créer les liens symboliques :

ln -s typo3_src/index.php index.php
ln -s typo3_src/typo3 typo3

Copier le .htaccess

Toujours dans le terminal :
cp typo3_src/_.htaccess .htaccess

Uniquement pour les version < à TYPO3 6.2

Pour ces versions, il faut créer un lien vers t3lib. Pour les versions suivantes, ce n'est plus nécessaire, le répertoire n'existant plus à partir de TYPO3 6.2.
ln -s typo3_src/t3lib t3lib

 

 

Créer le repertoire typo3temp

Dans un terminal, dans le repertoire du site, faire :

mkdir typo3temp

Mettre à jour les droits sur les repertoires

Ouvrir un terminal et dans le répertoire du site faire

chown -R root:www-data *

chmod -R 755 *

 

 

 

 

Cloner la base de donnée

Récupérer la base de donnée distante via phpmyadmin

A noter, les tables de cache, de logs et la table du gestionnaire d'extension peuvent être vidées pour diminuer la taille de la bdd.

Créer la BDD et le user en local via phpmyadmin

Aller à localhost/phpmyadmin/ et se logger comme root

Aller dans l'onglet utilisateur

Entrez les mêmes info que pour le site distant (nom d'utilisateur et mot de passe) et cocher
"Créer une base portant son nom et donner à cet utilisateur tous les privilèges sur cette base"
Importer la bdd via l'onglet..."Importer" de phpmyadmin

OK, c amarche ?

Aller voir si tout marche bien.

SI c'est tout cassé, il y a de bonne chance que la compression du backend et du frontend soit en cause.

Il faut que le module php zlib soit installé sur le serveur :vérifier si c'est le cas !

Sinon il faut soit l'installer (c'est mieux...) soit désactiver la compression via l'install tool