Laisser un commentaire

Apache & Nginx : servir des fichiers sans extension

Les pretty urls comme on les appelles communément, consistent à faire abstraction de l’extension des fichiers dans les urls. Ainsi, https://buzut.net/a-propos.html se transforme en https://buzut.net/a-propos. C’est plus court, c’est plus clean, c’est plus SEO, bref, c’est plus mieux. Voyons comment faire cela avec les serveurs les plus courants : Apache2 et Nginx.

Laisser un commentaire

SSH : Connection closed by x et Could not load host key

Ce matin, alors que je viens de finir l’installation d’un VPS, après reboot, j’ai une erreur Connection closed by x.x.x.x lorsque je tente de me connecter à la machine en SSH. Bizarre…

Laisser un commentaire

npm for everything™

npm était à l’origine le package manager pour Node.js. Cependant, son rôle s’est aujourd’hui élargit pour devenir le package manager du JavaScript tout court. Aussi bien en front qu’en back, de plus en plus de modules et bibliothèques utilisent aujourd’hui npm. On en fait même un task manager grâce aux scripts qu’il permet d’exécuter. Cela permet d’avoir un seul outil pour l’ensemble de nos process.

Laisser un commentaire

L'environnement de travail

En tant que développeurs, nous passons d’innombrables heures assis face à notre ordinateur. C’est pourquoi il est primordial de bien s’équiper pour avoir une bonne productivité. De l’écran à l’IDE, j’ai pensé qu’il pouvait être intéressant de partager mes outils de travail.

Laisser un commentaire

Guide ultime des images responsives & retina ready

La “technologie” Retina, si on peut l’appeler ainsi, consiste en une densité de pixels assez élevée pour que l’œil (d’où le nom de retina) ne puisse discerner les pixels sur l’écran. Cependant, avec une telle densité, pour ne pas que tout paraisse minuscule, la valeur en pixel de chaque élément est démultipliée. Concrètement, cela signifie que dans votre feuille CSS, tout élément que vous définissez, par exemple, avec une width: 100px; fera en réalité 200px. Tout est multiplié par deux.

À de telles résolutions, autant dire que vos images peuvent vite paraître pour le moins pixelisées. Il faut donc penser aux différentes tailles d’écrans, mais aussi aux différentes densités d’écans. Un 22” HD (1920x1080) n’aura pas besoin de la même qualité d’image qu’un 22” en 4k (4096x2016). Voyons comment penser nos images pour qu’elles soient éclatantes en toute situation.

Laisser un commentaire

Maitriser les conditions en bash

Le scripting bash est souvent déroutant. La syntaxe est parfois assez éloignée de ce à quoi nous sommes habitués dans d’autres langages. C’est d’ailleurs pourquoi beaucoup l’évitent au maximum. Pourtant, tôt ou tard, on a tous besoin d’écrire un petit .sh pour gérer un service ou automatiser un comportement sur un serveur.

Voilà pourquoi un petit rappel du fonctionnement des conditions – base de tout langage de programmation – en bash peut s’avérer salvateur. En route pour bashland !

Laisser un commentaire

Les répertoires & points de montages Linux en 2/2

Petit quickie sur les points de montages de Linux et leur utilité. On se retrouve en effet souvent désemparé face aux nombreux répertoires et à leur utilité. Où placer tel binaire, où mettre tel script. Tentons de répondre rapidement à cette question.

Laisser un commentaire

Synthèse des commandes SFTP en CLI

Je sais bien que la plupart du temps, vous utilisez un client graphique pour ce genre d’activité… surement FileZilla même. Mais pour une raison x ou y – ou tout simplement pour le plaisir de jouer le barbu – il arrive un jour où vous devez vous connectez en SFTP en ligne de commande. Rien de bien complexe rassurez-vous. Voyons rapidement comment s’en sortir.

Laisser un commentaire

Tirer toute la puissance d'Ansible avec les rôles

Ansible est absolument génial. Il permet d’automatiser l’installation et la maintenance de machines et d’infrastructures complètes. J’ai déjà consacré un article à la prise en main d’Ansible, nous nous concentrerons ici sur les rôles.

Les rôles représentent une manière d’abstraire les directives includes. C’est en quelque sorte une couche d’abstraction. Grâce aux rôles, il n’est plus utile de préciser les divers includes dans le playbook, ni les paths des fichiers de variables etc. Le playbook n’a qu’à lister les différents rôles à appliquer et le tour est joué !

En outre, depuis les tasks du rôle, l’ensemble des chemins sont relatifs. Inutile donc de préciser l’intégralité du path lors d’un copy, template ou d’une tâche. Le nom du fichier suffit, Ansible s’occupe du reste.

Laisser un commentaire

Optimiser les performances de MySQL

Les bases de données SQL et plus particulièrement MySQL restent une des pierres angulaires de l’immense majorité des sites internet. MySQL fonctionne très bien out of the box, cependant, dès que la base se trouve assez sollicitée, on s’aperçoit que les réglages par défaut méritent une petite optimisation. Jetons un œil à tout ça !