Additions client pour VirtualBox
Ici nous allons voir comment installer les additions client sur une virtualbox sous Windows et pour une Debian Etch en guest.
ça parait simple, mais quand on a installé une Debian assez maigre (avec presque rien dessus) la tache ne se résume plus a un simple clic, voici donc ce qu'il faut faire :
la première étape est obligatoire pour nous éviter un message d'erreur du type :
"Please install the build and header files for your current Linux kernel.
The current kernel version is 2.6.17-5mdv
Please install the GNU compiler.
Problems were found which would prevent VirtualBox from installing.
Please correct these problems and try again."
debian-guest:~# apt-get install linux-headers-`uname -r` build-essential |
après il faut aller dans : Périphériques >> Installer les additions client...
retourner dans Debian et faire :
debian-guest:~# cd /media/ debian-guest:~# mount cdrom0 debian-guest:~# cd cdrom debian-guest:~# sh VBoxLinuxAddition-XXXX.run (le XXX c'est la version adm64 ou x86) |
redémarrez les machine virtuelle est ca devrait être bon ;-)
changer la locale sous debian
aller, une petite astuce que j'ai mis du temps a trouver, je voulais changer la locale de mon serveur pour passer de fr_FR.ISOXXXXX à fr_FR.UTF-8.
il faut s'assurer que le paquet locale est deja installé (par défaut sur une etch il me semble) et faire un coup de :
dpkg-reconfigure locales |
et là on sélectionne la locale voulue en la mettant par défaut, se déconnecter, se reconnecter et le tour est joué :)
Wordpress avec Lighttpd
Depuis peu naeh.net tourne sous Lighttpd (Adieu mon cher Apache 2), parait-il c'est aussi performant que Apache mais ça consomme beaucoup moins de mérmoire et de ressources CPU.
C'est beau, rapide, léger, en gros c'est magnifique, mais c'est pas tout.
il faut noter tout de même quelques différences par rapport à Apache, Lighttpd ne comprend pas les .htaccess, ne gère pas les vhosts de la même façon qu'Apache etc.
Or, wordpress utilisse l'url rewriting pour nous donner de belles urls, voici donc le bout de code a ajouter dans le vhost de wordpress pour que ce dernier continue à servir de belles urls :
server.error-handler-404 = "/index.php?error=404" url.rewrite = ( "^/(wp-.+).*/?" => "$0", "^/(sitemap.xml)" => "$0", "^/(xmlrpc.php)" => "$0", "^/(.+)/?$" => "/index.php/$1" ) |
On garde même la gestion de l'erreur 404 par wordpress ;)
avec ces quelques lignes, votre wordpress ne peut que mieux se porter dans son nouvel environnement Lighty :)
N.B. n'oublier pas d'activer le module rewrite dans lighttpd.conf pour qu'il sache ce qu'on lui demande quand même ;)
voici la ligne a décommenter (ou a ajouter) :
server.modules = ( ... "mod_rewrite", ... ) |
n'oubliez pas un petit
/etc/init.d/lighttpd restart |
a la fin :)
Comment installer fileinfo sous debian
Les fonctions de l'extension FileInfo essaient de savoir le type de contenu et l’encodage d’un fichier en regardant certaines séquences d’octet "magique" à des positions spécifiques à l’intérieur du fichier. Bien qu'il ne s'agit pas d'une approche infaillible, la méthode heuristique effectue un très bon travail.
le problème avec cette extension c'est qu'elle est un peu dur à installer, en réalité pas si dur que ça, il suffit de prendre le temps de le faire. Il faut juste savoir qu'un simple apt-get install php5-fileinfo ne suffira pas, tout simplement parce qu'il n'existe pas de paquet debian pour cette extension (pas encore...).
Donc pour l'installer, voici la procédure :
Il faut d'abord installer PEAR :
apt-get install php-pear |
ensuite il faut installer php5-dev si ce n'est pas déjà fait, ceci installera phpize ce qui nous évitera l'erreur :
sh: phpize: command not found ERROR: `phpize' failed |
installation de php5-dev :
apt-get install php5-dev |
c'est presque bon mais pas encore :
maintenant il faut installer libmagic pour nous éviter une erreur lors de l'installation de fileinfo :
apt-get install libmagic-dev |
maintenant tout est bon, nous allons enfin pouvoir lancer l'installation de notre extension :
pecl install fileinfo |
Voilà, maintenant fileinfo est installée, nous allons pouvoir vérifier les types mime des fichiers avec des méthodes plus fiables ;-)
Normalement tout devrait fonctionner maintenant, mais il ce peut que l'extension ne soit pas activée comme il faut, dans ce cas il faudra créer un fichier fileinfo.ini dans /etc/php5/apache2/conf.d avec le contenu suivant :
extension=fileinfo.so |
reloader apache avec /etc/init.d/apache2 reload et le tour est joué :)
Protéger un répertoire par htaccess
Le but de cet article est montrer comment protéger un répertoire par un htaccess.
pour cela il faut d'abord créer un fichier .htaccess à la racine du répertoire, ce fichier doit contenir les lignes suivantes (a adapter selon la configuration/ besoins) :
AuthName "Page protégée" AuthType Basic AuthUserFile "/CHEMIN/VERS/LE/FICHIER/.htpasswd" Require valid-user |
en suite il faut créer un fichier .htpasswd qui lui contiendra les couples login/mot de passe qui auront accès au répertoire protégé.
pour cela exécutez la commande suivante :
htpasswd -c /CHEMIN/VERS/LE/FICHIER/.htpasswd LOGIN |
-c pour créer un nouveau fichier .htpasswd (a ne pas utiliser si vous ajouter un utilisateur à un fichier existant).
il vous sera ensuite demandé d'entrer le mot de passe 2 fois, faites le, et le tour est joué.
pour plus de renseignement sur la commande htpasswd, voici l'écran d'aide de ladite commande :
$ htpasswd
Usage:
htpasswd [-cmdpsD] passwordfile username
htpasswd -b[cmdpsD] passwordfile username password
htpasswd -n[mdps] username
htpasswd -nb[mdps] username password
-c Create a new file.
-n Don't update file; display results on stdout.
-m Force MD5 encryption of the password.
-d Force CRYPT encryption of the password (default).
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.
On Windows, NetWare and TPF systems the '-m' flag is used by default.
On all other systems, the '-p' flag will probably not work. |
notez aussi que pour que cette protection fonctionne, il est obligatoire de ne pas avoir la directive apache AllowOverride a none, sinon le fichier .htaccess ne sera pas pris en compte, donc n'oubliez pas de la commenter ou l'enlever tout simplement si vous l'avez dans votre vhost