Artisan Développeur

Qualité, amélioration continue, agilité.

WordPress multi site, mod vhost alias et sous domaines

WordPress multisite, apache, mod_vhost_alias

Comment utiliser mod_vhost_alias avec wordpress en mode multisite

Si comme moi, cher lecteur (j’ai toujours voulu écrire ça ^^ ) tu aimes bien avoir la possibilité d’avoir automatiquement un sous domaine lorsque tu crées un répertoire à la racine de ton site, tu dois connaître ou utiliser (sans connaître) mod_vhost_alias. Et dans les directives de ton vhost avoir une ligne de ce genre :

[pastacode lang= »bash » message= »virtualdocumentroot » highlight= »1″ provider= »manual »]

VirtualDocumentRoot /var/www/monjolisiteweb/htdocs/%1

[/pastacode]

J’étais très heureux comme ça ! Un jour, j’ai commencé à écouter ce que disent, entre autre, les gens de the family (http://www.thefamily.co/)  sur le growth hacking.

(Un super MOOC proposer par IONISx est disponible d’ailleurs.)

Entre temps j’ai retenu une chose il faut segmenter pour communiquer plus précisément, cibler, adapter le discours, avoir du feedback … Pour notre projet de startup ([maj 2016 ]qui n’a pas abouti), en version lean, low cost, on a opté pour un template wordpress « tout fait » (c’est très moche ce que la pauvreté du début de l’aventure te fait faire ^^ mais faut être pragmatique ! ). Une flat page, responsive très à la mode, mais comment je fais pour segmenter ?

Avec wordpress je savais que le mutisite (network) était possible, donc go sur le codex (comment configurer le multisite), j’ouvre mon wp-config.php, j’ajoute la ligne

[pastacode lang= »php » message= » » highlight= » » provider= »manual »]

/* Multisite */
define('WP_ALLOW_MULTISITE', true);

[/pastacode]

bref je suis le tuto du codex.

Évidemment, les sous répertoires, c’est moches, moi j’aime pas les sous répertoires – comme dirait le schtroumpf grognon, wiki.kaizendo.fr est mieux que kaizendo.fr/wiki, ça n’engage que moi, mais comme c’est moi qui décide « that’s it ! ».

Le multisite aussi me permettra, à terme, d’avoir des personnes différentes qui s’occuperont indépendamment des segments, en tout cas je l’espère.

J’active le multi-site wordpress, je crée le 2ème site de mon réseau wordpress, j’essaye d’afficher la page et là, c’est le drame… Erreur 404.

Après cinq minutes à me creuser la tête, un petit tour par la zone dns, deux trois tests, je repense à mes sous domaines automatiques ! La solution est d’avoir un vhost spécifique pour le WordPress network qui va contenir les alias nécessaires, un alias par site.

Je crée un vhost avant la directive VirtualDocumentRoot, avet comme document root l’install wordpress. Pour chaque site de mon WordPress network il faudra faire un alias à ce vhost.

[pastacode lang= »bash » message= »Vhost wordpress multi site » highlight= » » provider= »manual »]


ServerName sousdomaine.kaizendo.fr
ServerAlias autreSousDomaine.kaizendo.fr
DocumentRoot /var/www/monjolisiteweb/htdocs 

Options ExecCGI FollowSymlinks
AllowOverride all
Order allow,deny
Allow from all


[/pastacode]

Quand le requête est traitée, le vhost est trouvé, renvoyé vers le document root du wordpress master, et ça fonctionne ! Comme ça je garde la flexibilité des sous domaines automatiques et j’utilise la capacité multisite de wordpress.

 

Ubuntu 14.04 LTS mise à jour Kubuntu /boot plein

Espace libre insuffisant sur le disque

/boot n’a plus assez d’espace, il faut supprimer des anciens kernel pour gagner les quelques MO qu’il manque.

En suivant les indications de la page d’ ubuntu-fr on va nettoyer un peu les vielles versions, je vais garder uniquement le dernier, puisque je sais qu’il fonctionne et je vais installer le nouveau pendant l’upgrade. Si le nouveau kernel pose problème je pourrais démarrer sur celui d’avant.

[pastacode provider= »manual » lang= »bash »]

uname -r

[/pastacode]

Résultat chez moi :

[pastacode provider= »manual » lang= »bash »]

3.11.0-19-generic

[/pastacode]

[pastacode provider= »manual » lang= »bash »]

dpkg -l | grep -Ei "linux-headers|linux-image"

[/pastacode]

dpkg – l liste les paquets installés, ensuite | pour rediriger la sortie de la commande précédente vers la commande grep qui va chercher l’expression et montrer uniquement les résultats qui correspondent.

Résultat chez moi :

[pastacode provider= »manual » lang= »bash »]

ii  linux-headers-3.11.0-12                                     3.11.0-12.19                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-12-generic                             3.11.0-12.19                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-3.11.0-14                                     3.11.0-14.21                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-14-generic                             3.11.0-14.21                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-3.11.0-15                                     3.11.0-15.25                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-15-generic                             3.11.0-15.25                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-3.11.0-17                                     3.11.0-17.31                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-17-generic                             3.11.0-17.31                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-3.11.0-18                                     3.11.0-18.32                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-18-generic                             3.11.0-18.32                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-3.11.0-19                                     3.11.0-19.33                            all          Header files related to Linux kernel version 3.11.0
ii  linux-headers-3.11.0-19-generic                             3.11.0-19.33                            amd64        Linux kernel headers for version 3.11.0 on 64 bit x86 SMP
ii  linux-headers-generic                                       3.11.0.19.20                            amd64        Generic Linux kernel headers
ii  linux-image-3.11.0-12-generic                               3.11.0-12.19                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-3.11.0-14-generic                               3.11.0-14.21                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-3.11.0-15-generic                               3.11.0-15.25                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-3.11.0-17-generic                               3.11.0-17.31                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-3.11.0-18-generic                               3.11.0-18.32                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-3.11.0-19-generic                               3.11.0-19.33                            amd64        Linux kernel image for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-extra-3.11.0-12-generic                         3.11.0-12.19                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-extra-3.11.0-14-generic                         3.11.0-14.21                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-extra-3.11.0-15-generic                         3.11.0-15.25                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-extra-3.11.0-17-generic                         3.11.0-17.31                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
ii  linux-image-extra-3.11.0-18-generic                         3.11.0-18.32                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
iF  linux-image-extra-3.11.0-19-generic                         3.11.0-19.33                            amd64        Linux kernel extra modules for version 3.11.0 on 64 bit x86 SMP
iU  linux-image-generic                                         3.11.0.19.20                            amd64        Generic Linux kernel image

[/pastacode]

[pastacode provider= »manual » lang= »bash »]

sudo apt-get remove linux-headers-3.11.0-12 linux-headers-3.11.0-12-generic linux-headers-3.11.0-14 linux-headers-3.11.0-14-generic linux-headers-3.11.0-15 linux-headers-3.11.0-15-generic linux-headers-3.11.0-17 linux-headers-3.11.0-17-generic linux-headers-3.11.0-18 linux-headers-3.11.0-18-generic linux-image-3.11.0-12-generic linux-image-3.11.0-14-generic linux-image-3.11.0-15-generic linux-image-3.11.0-17-generic linux-image-3.11.0-18-generic linux-image-extra-3.11.0-12-generic linux-image-extra-3.11.0-14-generic linux-image-extra-3.11.0-15-generic linux-image-extra-3.11.0-17-generic --purge

[/pastacode]

Je n’ai pas redémarré entre temps, la flemme ^^, je ferme la fenêtre d’erreur et je relance l’upgrade vers Kubuntu 14.04, ce coup ci pas de soucis /boot a de l’espace libre.

Edit: Pendant la mise à jour, les écrans s’éteignent, et je me retrouve juste avec le curseur blanc sur fond noir en haut à gauche. Après 3-4 minutes de patience, je reset mon pc, je n’ai pas envie d’attendre 1h00 devant. Et là évidemment avec le nouveau kernel ça ne démarre pas, dpkg (qui gère les package) n’ayant pas finis de tout configurer.

Je reset de nouveau et dans la liste de GRUB je choisis le kernel que j’avais conservé (3.11.0-19), le système repart, j’ouvre une console, ensuite je vais dire à dpkg de finir son boulot :

[pastacode provider= »manual » lang= »markup »]

sudo dpkg --configure -a

[/pastacode]

Enfin, après un redémarrage, tout va bien !

Changer l’ordre des comptes dans thunderbird

Depuis le temps que j’utilise thunderbird je me décide enfin à l’arranger un peu.

Là j’avais envie de changer l’ordre des comptes mails, on suit les screen !

Édition -> Préférences -> Générales -> Éditeur de configuration

préférences

config

Un gentil message qui nous invite à ne pas faire de bêtises…

danger

On cherche «account»

accountSearch

On trouve cette ligne, et on l’édite

accountOrder

 

accountOrder1

On relance Thunderbird et les comptes sont dans l’ordre choisis !

ps: j’ai fais ça sous mon pti Kubuntu 13.10, je n’ai pas été voir/tester chez nos copains sur d’autres os.