mod_perl avec Ubuntu

Pour installer mod_perl sous Ubuntu (et bien sûr, après avoir installé Apache !) :

sudo aptitude install -r libapache2-mod-perl2

Puis dans /etc/apache2/sites-available/monsite  (remplacer “monsite” par le nom de votre site, si vous n’en avez créé aucun, et que vous etes seulement en test, Apache a normalement créé pour vous un fichier “default”, ajoutez le bloc suivant, à l’intérieur des balises <VirtualHost> :

Alias /perl/ /chemin/complet/du/dossier/contenant/vos/scipts/perl/
<Location /perl/>
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
Order allow,deny
Allow from all
</Location>

Quand c’est fait, n’oubliez pas de redémarrer Apache, pour mettre à jour la configuration :

sudo service apache2 restart

Pour des infos plus détaillées : perl.apache.org

Posted in android, Uncategorized | Leave a comment

Comment réparer les dégats causés par eclipse dans CVS

Si comme moi vous êtes frappé par une double peine (vous êtes contraint d’utiliser CVS, et qui plus est uniquement en ligne de commande), vous aurez peut etre déjà été confronté au problème suivant :
Ayant essayé d’utiliser CVS avec eclipse (impossible dans mon environnement de développement actuel, mais c’est un autre sujet), je me suis fait quelques frayeurs lorsque j’ai voulu faire un update en ligne de commande :

cvs update: Unknown method (`extssh') in CVSROOT.
'.s [update aborted]: Bad CVSROOT: `:extssh:landry@monserveur:/home/cvs

La solution :

find . -type f -name "Root" -exec sed -i 's/extssh/ext/g' {} \;

Je pensais être tiré d’affaire, mais pas du tout :

/CVSROOTccess /home/cvs
No such file or directory

La solution :

find . -name Root -or -name Entries -or -name Repository | while read file; do dos2unix "$file"; done
Posted in eclipse | Leave a comment

Android 2.1 sur le Samsung Spica !

Ca y est, je viens de faire la mise à jour officielle android 2.1 sur mon Spica ! Comme prévu, ça n’a pas été simple, l’immonde logiciel “New PC Studio” de Samsung étant toujours aussi buggé et inutilisable dans sa version 1.5… Qui plus est, même si j’arrive à l’exécuter via Virtual Box, la mise à jour n’est possible que sur un PC Windows. J’ai donc du accaparer le portable de mon petit frère pour pouvoir mener à bien cette douloureuse opération. Je vous épargnerai les détails, frayeurs, reboots et autres péripéties qui m’ont occupé 2 heures durant. Ce lien m’a été très utile : forum frandroid.com
Les avantages de cette nouvelle version de android :

  • l’écran du Spica est bien plus réactif
  • le bouton de dévérouillage de l’écran fonctionne parfaitement
  • possibilité de dévérouiller l’écran de façon tactile
  • gestion de plusieurs comptes gmail en mode push
  • meilleure réactivité générale du téléphone
  • le market vous signale tout seul les mises à jour disponibles pour les applis installées
  • nouveau market, beaucoup plus sympa visuellement, et beaucoup plus réactif lui aussi

Voilà, j’en oublie sans doute, n’hésitez pas à compléter la liste !

Posted in android | Leave a comment

Mise à jour Bus Stop : v1.0.5

Cette mise à jour est compatible avec les terminaux QVGA, et notamment le HTC Tatoo.
Un grand merci à Jean-Charles pour son aide ;-)

Posted in Bus Stop | Leave a comment

Requêtes http avec Android (version sans prise de tête)

Pour la énième fois, je suis tombé sur un article expliquant comment récupérer du contenu html, en utilisant toute la famille InputStream, StringBuffer, et autres joyeusetés. Si comme moi, vous êtes allergique à Java IO, voici en exclusivité comment envoyer des requêtes http, et surtout récupérer la réponse sous forme de String. Attention, ça va très vite :

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpget = new HttpGet("http://www.example.com");
response = httpClient.execute(httpget);
HttpEntity entity = response.getEntity();
if (entity != null)
     String responseString = EntityUtils.toString(entity);
Posted in Uncategorized | Tagged | 6 Comments

Mise à jour Bus Stop : v1.0.4

Cette mise à jour corrige le poblème que rencontraient les utilisateurs SFR (impossibilité de récupérer les horaires).
Immense merci à Brian, Jéhan et JM, utilisateurs patients sans qui je n’aurai pas pu résoudre ce problème.

Posted in Bus Stop | Leave a comment

Mise à jour Bus Stop : v1.0.2

01/02/2010 – v 1.0.2 :

  1. Suite aux nombreuses demandes reçues, j’ai modifié la liste des favoris : suppression du bouton refresh, qui était trop petit. Il suffit désormais de cliquer n’importe où sur la ligne pour récupérer les horaires.
Posted in Bus Stop | Leave a comment

Log4perl et Apache : comment tracer des scripts CGI

Bon, ce truc de configuration va certainement faire sourire les vieux briscards de Perl, mais le débutant que je suis a passé un petit moment avant de trouver la solution.
Le problème : vous souhaitez utiliser Log4perl pour écrire les logs de vos scripts CGI, mais vous avez des erreurs “permission denied” à l’exécution des scripts.
La solution : il vous faut modifier les droits sur le dossier dans lequel vous voulez écrire, de manière à ce que le user servant à lancer Apache aie les droits sur ce dossier.
Dans les scripts :

use Log::Log4perl qw(:easy);
Log::Log4perl::init('/etc/log4perl.conf');
DEBUG 'message de debug.';

Créez un dossier qui contiendra les logs de vos scripts (ici, apacheuser est l’utilisateur qui lance Apache):

    monserveur:~$ sudo mkdir /var/log/cgiapps
    monserveur:~$ sudo chown apacheuser:root /var/log/cgiapps/
    monserveur:~$ sudo chown apacheuser:root -R /var/log/cgiapps/
    monserveur:~$ sudo chmod 02755 -R /var/log/cgiapps/

Le fichier de configuration /etc/log4perl.conf :

    log4perl.rootLogger=DEBUG, LOGFILE

    log4perl.appender.LOGFILE=Log::Log4perl::Appender::File
    log4perl.appender.LOGFILE.filename=/var/log/cgiapps/monscritp.log
    log4perl.appender.LOGFILE.mode=append

    log4perl.appender.LOGFILE.layout=PatternLayout
    log4perl.appender.LOGFILE.layout.ConversionPattern=[%r] %F %L %c - %m%n
Posted in perl | Leave a comment

Plus de clicks sur Eclipse avec Ubuntu 9.10

Damned !
Je me suis retrouvé avec un curieux problème Eclipse : certains clicks de souris inopérants (obligé de “clicker” avec la barre espace du clavier). Une rapide recherche Google m’a heureusement sauvé. Il semblerait qu’il y ait un changement de la gestion GDK avec Ubuntu 9.10, qui n’est pas du goût d’Eclipse.
La solution :
Créer un script de lancement, appelons-le eclipse-launcher :

#!/bin/sh
export GDK_NATIVE_WINDOWS=true
/chemin/vers/executable/eclipse

L’export permet de corriger temporairement le bug GDK, la ligne suivante lance eclipse.
Ne pas oublier un

chmod +x eclipse-launcher

Il suffit ensuite de créer un launcher Gnome pointant sur le fichier que nous venons de créer, et le tour est joué !

Posted in eclipse | Tagged , | Leave a comment

Ubuntu, Tomcat, Apache sans douleur

Je commence enfin à me servir de mon VPS, que j’avais depuis un moment (d’ailleurs à ce sujet, je vous recommande linode.com Ils sont d’un sérieux remarquable, pour un prix tout à fait correct. Je n’ai vraiment que des compliments à leur faire), et comme toujours, j’appréhendais le moment où j’allais devoir configurer Tomcat et Apache pour fonctionner ensemble. Je l’ai déjà fait un certain nombre de fois, mais à chaque fois c’est la panique tant c’est peu intuitif.

Voici donc un pense-bête, qui pourra peut-être vous servir :

Tout d’abord le serveur : c’est du Ubuntu 9.04.

L’installation d’apache se fait classiquement via aptitude, ainsi que l’installation de java, et du tant redouté mod_jk :

sudo aptitude install apache2 sun-java6-jdk libapache2-mod-jk

Ensuite, je me suis basé sur les 2 liens suivants :

www.howtogeek.com/howto/linux/installing-tomcat-6-on-ubuntu/
wbruschi.blogspot.com/2009/01/install-tomcat-6-on-ubuntu-intrepid.html

J’ai fait un mix des deux, car je garde un mauvais souvenir de l’installation de Tomcat via les packages Ubuntu ou Debian. De plus, le package Tomcat a des dépendances sur OpenJdk, et il vaut donc bien mieux l’installer manuellement, de la manière décrite dans le 1er lien.
Au final, après 10 minutes et quelques tanonements (bien faire attention à indiquer le chemin correct vers le fichier workers.properties dans apache2.conf !), l’installation s’est bien passée !

Pour désactiver l’accès à Tomcat par le port 8080, il faut commenter dans le fichier server.xml de Tomcat le bloc suivant :


Attention !
Pour que le serveur prenne en compte vos changements de configuration, il faut toujours, et dans cet ordre :
arreter Apache
faire un restart de Tomcat
démarrer Apache

Par ailleurs, Ubuntu depuis la version 8.10 permet d’utiliser la syntaxe service , toujours plus pratique que /etc/init.d/ etc..
Ce qui donne par exemple :

sudo service tomcat restart

A suivre :
Le monitoring d’Apache. J’ai commencé à étudier cette solution.

Posted in admin | Tagged , | Leave a comment