<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Le blog de NicoLargo &#187; Web</title> <atom:link href="http://blog.nicolargo.com/category/web/feed" rel="self" type="application/rss+xml" /><link>http://blog.nicolargo.com</link> <description>&#34;La connaissance est la seule chose qui s&#039;accroit lorsqu&#039;on la partage.&#34;</description> <lastBuildDate>Thu, 02 Sep 2010 08:38:02 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>Nouveau thème pour le blog !</title><link>http://blog.nicolargo.com/2010/08/nouveau-theme-pour-le-blog-2.html</link> <comments>http://blog.nicolargo.com/2010/08/nouveau-theme-pour-le-blog-2.html#comments</comments> <pubDate>Sun, 29 Aug 2010 20:18:14 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[Open-source]]></category> <category><![CDATA[Web]]></category> <category><![CDATA[nicolargo]]></category> <category><![CDATA[theme]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3465</guid> <description><![CDATA[Après 3 ans de bons et loyaux services, le thème Largo v1 prend sa retraite bien méritée. Il laisse sa place à Largo v2 (oui je sais, ce n&#8217;est pas très original&#8230;). Pourquoi un nouveau thème ? Tout simplement parce que je commençais à me lasser du précédent. De plus comme Largo v1 était le premier [...]]]></description> <content:encoded><![CDATA[<p>Après 3 ans de bons et loyaux services, le thème Largo v1 prend sa retraite bien méritée. Il laisse sa place à Largo v2 (oui je sais, ce n&#8217;est pas très original&#8230;).</p><h1>Pourquoi un nouveau thème ?</h1><p>Tout simplement parce que je commençais à me lasser du précédent. De plus comme Largo v1 était le premier thème WordPress que j&#8217;avais développé &#8220;from scratch&#8221; (<a
href="http://www.fran6art.com/wordpress/creez-votre-theme-wordpress-de-a-a-z/">merci encore aux tutos de Francis</a>), il était assez difficile à administrer et à faire évoluer.</p><p>Une fois la décision de changement de thème prise, j&#8217;ai commencé à regarder ce qu&#8217;il existait sur le marché, que ce soit au niveau des thèmes gratuits et payants. Je n&#8217;ai malheureusement jamais trouvé un thème qui réponde totalement à mes besoins. N&#8217;ayant pas les moyens de le faire développer par des professionnels du Webdesign (peut être la prochaine version&#8230;), j&#8217;ai mis la main dans le clavier et la souris.</p><h1>Petit tour du propriétaire</h1><h2>Le haut et le base du blog&#8230;</h2><p>On retrouve en haut à gauche une liste de liens vers les pages statiques du blog qui évoluera selon&#8230; mes envies. Pour l&#8217;instant des liens vers:</p><ul><li>la home page</li><li>la catégorie Open-source (le fond de commerce du blog;))</li><li>la &#8220;<em>famous</em>&#8221; page Nagios &amp; Co avec tous les billets sur la supervision système et réseau</li><li>la &#8220;<em>nouvelle</em>&#8221; page GStreamer avec tous les billets sur ce framework multimedia</li><li>la page Publicité pour les annonceurs (coucou)</li><li>la page A propos</li><li>la Contact</li></ul><p>En haut à droite, on a la liste des liens pour s&#8217;abonner au blog (c&#8217;est à dire recevoir les nouveaux billets sans forcement venir tout les jours sur le blog). Plusieurs solutions: par mail, via Facebook, par Twitter et enfin par RSS.</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-top.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3466" title="largo2-top" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-top-580x295.jpg" alt="" width="580" height="295" /></a></p><p>En bas du blog, on a le pas très original footer:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-bottom.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3468" title="largo2-bottom" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-bottom-580x271.jpg" alt="" width="580" height="271" /></a></p><h2>La home page (index)</h2><p>On retrouve sur la page principale la liste des derniers billets avec quelques informations:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-index.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3467" title="largo2-index" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-index-580x152.jpg" alt="" width="580" height="152" /></a></p><h2>Les billets</h2><p>C&#8217;est le coeur du blog, vu que ces pages représentent 95% des visites&#8230; A gauche du billet, j&#8217;ai mis en place une sidebar avec quelques informations et liens utiles aux lecteurs pour approfondir le sujet.</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singletop.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3469" title="largo2-singletop" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singletop-580x321.jpg" alt="" width="580" height="321" /></a></p><p>Au bas du billet, un menu permet de partager ou lire plus d&#8217;articles sur le sujet:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singleshare.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3470" title="largo2-singleshare" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singleshare-580x345.jpg" alt="" width="580" height="345" /></a>Il suffit de cliquer sur le bandeau vert pour accéder aux différents sous menus&#8230;</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singlesimilar.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3471" title="largo2-singlesimilar" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-singlesimilar-580x316.jpg" alt="" width="580" height="316" /></a>Enfin les commentaires se trouve après tout celà:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-comment.jpg" rel="lightbox[3465]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3472" title="largo2-comment" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/largo2-comment-580x304.jpg" alt="" width="580" height="304" /></a></p><h1>Conclusion</h1><p>Bien que j&#8217;ai testé en interne (et avec l&#8217;aide de Nicolas aka Ritchy) le thème, il doit sûrement y avoir quelques coquilles restantes. Je compte sur vous pour me les signaler. De plus si vous avez des questions ou des remarques sur ce nouveau thème je suis également preneur !</p><p>Ce blog est fait pour vous !</p><p>PS: suite au hack du blog et à mon changement d’hébergeur, il semble que certains utilisateurs du réseau Free utilisent des DNS pointant encore sur mon ancien serveur. J&#8217;ai envoyé un mail au support de Free en espérant que le problème soit vite résolu&#8230;</p><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3465"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/08/nouveau-theme-pour-le-blog-2.html/feed</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>Un page fan Facebook pour le blog</title><link>http://blog.nicolargo.com/2010/08/un-page-fan-facebook-pour-le-blog.html</link> <comments>http://blog.nicolargo.com/2010/08/un-page-fan-facebook-pour-le-blog.html#comments</comments> <pubDate>Thu, 26 Aug 2010 13:09:40 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[Web]]></category> <category><![CDATA[facebook]]></category> <category><![CDATA[page]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3441</guid> <description><![CDATA[Pas mal de lecteurs me demandent comme &#8220;ami&#8221; dans Facebook&#8230; J&#8217;utilise principalement mon compte Facebook à des fins personnelles, il n&#8217;est donc pas possible pour moi d&#8217;accepter ces demandes. En contre partie, je viens de créer une &#8220;fan page&#8221; pour Le blog de Nicolargo. Elle va reprendre les articles publiés sur le blog et les news de [...]]]></description> <content:encoded><![CDATA[<p><img
style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="size-full wp-image-3442 alignright" title="Sélection_036" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_036.png" alt="" width="250" height="125" />Pas mal de lecteurs me demandent comme &#8220;ami&#8221; dans Facebook&#8230; J&#8217;utilise principalement mon compte Facebook à des fins personnelles, il n&#8217;est donc pas possible pour moi d&#8217;accepter ces demandes.</p><p>En contre partie, je viens de créer une &#8220;fan page&#8221; pour Le blog de Nicolargo.</p><p>Elle va reprendre les articles publiés sur le blog et les news de ma timeline twitter. Pour devenir &#8220;fan&#8221; du blog, il suffit de cliquer sur le bouton &#8216;J&#8217;aime&#8217;&#8230;</p><p>La page Facebook du Blog de Nicolargo se trouve à l&#8217;adresse suivante:</p><p
style="text-align: center;"><a
href="http://www.facebook.com/pages/Le-blog-de-Nicolargo/151534574873311">http://www.facebook.com/pages/Le-blog-de-Nicolargo/151534574873311</a></p><p
style="text-align: left;">A bientôt sur Facebook ou ailleurs !</p><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3441"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/08/un-page-fan-facebook-pour-le-blog.html/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Installation d&#8217;un blog WordPress sur un VPS Gandi</title><link>http://blog.nicolargo.com/2010/08/installation-dun-blog-wordpress-sur-un-vps-gandi.html</link> <comments>http://blog.nicolargo.com/2010/08/installation-dun-blog-wordpress-sur-un-vps-gandi.html#comments</comments> <pubDate>Wed, 25 Aug 2010 08:55:48 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[Open-source]]></category> <category><![CDATA[Web]]></category> <category><![CDATA[apache]]></category> <category><![CDATA[gandi]]></category> <category><![CDATA[serveur]]></category> <category><![CDATA[ubuntu]]></category> <category><![CDATA[vps]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3419</guid> <description><![CDATA[Comme vous le savez, je me suis fait hacké mon site pendant les &#8220;grandes vacances&#8221;. Cette petite contrariété m&#8217;a fait faire dans l&#8217;urgence une chose que j&#8217;avais planifier depuis un certain moment: la migration du Blog de Nicolargo sur un serveur privé virtuel de Gandi. Nous allons donc voir dans ce billet comment installer, sécuriser [...]]]></description> <content:encoded><![CDATA[<p>Comme vous le savez, <a
href="je me suis fait hacké mon site">je me suis fait hacké mon site</a> pendant les &#8220;grandes vacances&#8221;. Cette petite contrariété m&#8217;a fait faire dans l&#8217;urgence une chose que <a
href="http://blog.nicolargo.com/2009/05/creation-dun-serveur-chez-gandi.html">j&#8217;avais planifier depuis un certain moment</a>: la migration du Blog de Nicolargo sur <a
href="http://www.gandi.net/hebergement/">un serveur privé virtuel de Gandi</a>.</p><p>Nous allons donc voir dans ce billet comment installer, sécuriser et optimiser une blog WordPress sur une serveur privé virtuel !<span
id="more-3419"></span></p><h1>Commencons par le commencement</h1><p>Il faut d&#8217;abord choisir les performances initiales du serveur virtuel. J&#8217;ai utilisé le serveur que j&#8217;avais créé il y a quelques mois. C&#8217;est l&#8217;entrée de gamme, c&#8217;est à dire 1 part correspondant aux spécifications suivantes:</p><ul
id="dyn_specs"><li>1/64<sup>ème</sup> des capacités globales du serveur, soit environ <strong>1 GHz</strong></li><li>1/64<sup>ème</sup> des 16 Go de mémoire du serveur, soit <strong>256 Mo de RAM garantie avec un burst possible à 2 Go</strong> (+512 Mo de Swap)</li><li>1/64<sup>ème</sup> des capacités réseau, soit <strong>5 Mbits dédiés</strong></li><li>1/64<sup>ème</sup> du disque réservé au serveur, soit <strong>5 Go de disque data</strong> (+3 Go pour le système)</li></ul><p>Comme nous allons le voir plus tard cette configuration n&#8217;est pas adapté pour un blog avec un trafic relativement important (environ 1 00 000 pages vues par mois) . Je suis donc rapidement passé à la configuration suivante:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_033.png" rel="lightbox[3419]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-full wp-image-3435" title="Conf serveur blog.nicolargo.com 2010/08" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_033.png" alt="" width="428" height="304" /></a></p><p>Nous disposons donc d&#8217;un accès SSH (root) sur le serveur,. Après une mise à jour du système d&#8217;ecploitation (Ubuntu Server 9.04) nous pouvons enfin commencer les choses sérieuses&#8230;</p><h1>Installation du serveur Web Apache</h1><p>On commence par installer le serveur:</p><blockquote><p>sudo aptitude install apache2</p></blockquote><p>Puis on active les modules qui vont nous permettre d&#8217;optimiser les performances de WordPress:</p><blockquote><p>sudo a2enmod deflate</p><p>sudo a2enmod headers</p><p>sudo a2enmod rewrite</p><p>sudo a2enmod expires</p></blockquote><p>Il est également possible d&#8217;adapter la configuration des processus Apache (nombre de process, nombre maximal de client par process..) en modifiant le fichier /etc/apache2/apache2.conf:</p><blockquote><p>&lt;IfModule mpm_prefork_module&gt;</p><p>StartServers          5</p><p>MinSpareServers       5</p><p>MaxSpareServers      10</p><p>MaxClients          40</p><p>MaxRequestsPerChild   2000</p><p>&lt;/IfModule&gt;</p></blockquote><p><strong>StartServers</strong> permet de configurer le nombre de processus Apache lancés au démarrage.</p><p><strong>MinSpareServers</strong> et <strong>MaxSpareServers</strong> donnent respectivement le nombre minimum et maximum de processus Apache selon les besoins.</p><p><strong>MaxClients</strong> permet de configurer le nombre de clients (au sens session TCP) pouvant se connecter simultanément à un processus Apache. Pour des sites dynamiques (comme WordPress) il est plutôt conseillé de ne pas avoir une valeur trop élevée afin d&#8217;éviter les swap mémoire sur disque.</p><p>Une solution proposée <a
href="http://thethemefoundry.com/blog/optimize-apache-wordpress/">sur ce blog</a> pour calculer la valeur MaxClients est la suivantes: Il faut d&#8217;abord regarder combien de mémoire prend un processus apache2 (par exemple avec la commande <em>top</em>), puis diviser la mémoire système disponible par cette valeur. Par exemple, pour un serveur disposant de 1 Go de RAM (1000 Mo) et dont chaque processus Apache occupe 25 Mo, on a le calcul suivant:</p><p
style="padding-left: 30px;">MaxClients = 1000 / 25 = 40</p><p>Enfin <strong>MaxRequestsPerChild</strong> permet de définir le nombre maximal de requête qu&#8217;un processus peut prendre en charge avant d&#8217;être tué. Il est conseillé de mettre une valeur différente de 0 (le processus n&#8217;est alors jamais tué) pour éviter qu&#8217;une processus ne consomme trop de mémoire si un problème arrive.</p><p>On passe ensuite aux directives <strong>KeepAlive</strong> qui permette de configurer finement le temps de vie des sessions TCP. Pour un site dynamique comportant un nombre important d&#8217;images et de JS (comme mon blog), les valeurs suivants sont un bon point de départ:</p><blockquote><div
id="_mcePaste"># KeepAlive: Whether or not to allow persistent connections</div><div
id="_mcePaste">KeepAlive On</div><div
id="_mcePaste"># MaxKeepAliveRequests: The maximum number of requests to allow</div><div
id="_mcePaste">MaxKeepAliveRequests 200</div><div
id="_mcePaste"># KeepAliveTimeout: Number of seconds to wait for the next request</div><div
id="_mcePaste">KeepAliveTimeout 5</div><div><div># Timeout: The number of seconds before receives and sends time out.</div><div>Timeout 50</div></div></blockquote><p>Enfin on relance le serveur pour que la configuration soit prise en compte:</p><blockquote><p>sudo /etc/init.d/apache2 restart</p></blockquote><h1 style="font-size: 2em;">Installation de MySQL</h1><p>On commence par installer le serveur MySQL:</p><blockquote><p>sudo aptitude install mysql-server</p></blockquote><p>Puis on créé une base de donnée et un compte utilisateur associé qui va servir pour WordPress:</p><blockquote><p>mysql -u adminusername -p</p><p>mysql&gt; CREATE DATABASE databasename;</p><p>Query OK, 1 row affected (0.00 sec)</p><p>mysql&gt; GRANT ALL PRIVILEGES ON databasename.* TO &#8220;wordpressusername&#8221;@&#8221;hostname&#8221;</p><p>-&gt; IDENTIFIED BY &#8220;password&#8221;;</p><p>Query OK, 0 rows affected (0.00 sec)</p><p>mysql&gt; FLUSH PRIVILEGES;</p><p>Query OK, 0 rows affected (0.01 sec)</p><p>mysql&gt; EXIT</p></blockquote><p>On peut optimiser la base de donnée en éditant le fichier /etc/mysql/my.cnf:</p><blockquote><p>query_cache_type	= 1</p><p>query_cache_limit       = 2M</p><p>query_cache_size        = 32M</p></blockquote><p>Ne pas oublier de relancer le serveur MySQL pour prendre en compte les modifications.</p><h1>Installation de WordPress</h1><p>Depuis le hack de mon blog, j&#8217;ai décidé de travailler directement avec la version SVN de WordPress afin de disposer au plus vite des patchs de sécurité. Une fois de le répertoire racine de votre site Web (/home/nicolargo/web/blog dans mon cas), il faut saisir la commande suivante:</p><blockquote><p>svn co http://core.svn.wordpress.org/trunk/ .</p></blockquote><p>On ajoute ensuite la ligne suivante dans le fichier .htaccess afin de rendre invisible les sous répertoires .svn:</p><blockquote><p>RewriteRule ^(.*/)?\.svn/ &#8211; [F,L]</p></blockquote><p>Puis on finalise l&#8217;installation en suivant <a
href="http://codex.wordpress.org/Installing_WordPress#Famous_5-Minute_Install">la fameuse installation de WordPress en 5 minutes</a>.</p><p>Il est ensuite conseillé de supprimer le fichier wp-admin/install.php (qui ne servira plus une fois l&#8217;installation faite):</p><blockquote><p>rm wp-admin/install.php</p></blockquote><h1>Sécurisation de WordPress</h1><p>Cette sécurisation passe par deux étapes. Une première est de protéger le blog à l&#8217;aide du fichier .htaccess. La seconde est d&#8217;installer des plugins de sécurité qui vont nous permettre de faire régulièrement des audits sur notre serveur.</p><p>Pour le fichier .htaccess, j&#8217;utilise la base suivante:</p><blockquote><p># MAIN</p><p>RewriteEngine On</p><p>ServerSignature Off</p><p>Options All -Indexes</p><p>Options +FollowSymLinks</p><p><br
class="spacer_" /></p><p># SVN protect</p><p>RewriteRule ^(.*/)?\.svn/ &#8211; [F,L]</p><p><br
class="spacer_" /></p><p># Secure .htaccess</p><p>&lt;Files .htaccess&gt;</p><p>Order Allow,Deny</p><p>Deny from all</p><p>&lt;/Files&gt;</p><p><br
class="spacer_" /></p><p># Secure wp-config.php</p><p>&lt;Files wp-config.php&gt;</p><p>Order Deny,Allow</p><p>Deny from all</p><p>&lt;/Files&gt;</p><p><br
class="spacer_" /></p><p># FILTER REQUEST</p><p>&lt;IfModule mod_rewrite.c&gt;</p><p>RewriteBase /</p><p>RewriteCond %{REQUEST_FILENAME} !-f</p><p>RewriteCond %{REQUEST_FILENAME} !-d</p><p>RewriteRule . /index.php [L]</p><p>&lt;/IfModule&gt;</p><p><br
class="spacer_" /></p><p># BEGIN Expire Header</p><p>&lt;FilesMatch &#8220;\.(ico|jpg|jpeg|png|gif|js|css|swf)$&#8221;&gt;</p><p>ExpiresDefault &#8220;access plus 2 hours&#8221;</p><p>&lt;/FilesMatch&gt;</p><p><br
class="spacer_" /></p><p># BLACKLIST CANDIDATES</p><p>&lt;Limit GET POST PUT&gt;</p><p>Order Allow,Deny</p><p>Allow from all</p><p>Deny from 75.126.85.215   &#8220;# blacklist candidate 2008-01-02 = admin-ajax.php attack &#8220;</p><p>Deny from 128.111.48.138  &#8220;# blacklist candidate 2008-02-10 = cryptic character strings &#8220;</p><p>Deny from 87.248.163.54   &#8220;# blacklist candidate 2008-03-09 = block administrative attacks &#8220;</p><p>Deny from 84.122.143.99   &#8220;# blacklist candidate 2008-04-27 = block clam store loser &#8220;</p><p>Deny from 210.210.119.145 &#8220;# blacklist candidate 2008-05-31 = block _vpi.xml attacks &#8220;</p><p>Deny from 66.74.199.125   &#8220;# blacklist candidate 2008-10-19 = block mindless spider running &#8220;</p><p>Deny from 203.55.231.100  &#8220;# 1048 attacks in 60 minutes&#8221;</p><p>Deny from 24.19.202.10    &#8220;# 1629 attacks in 90 minutes&#8221;</p><p>&lt;/Limit&gt;</p><p><br
class="spacer_" /></p><p># QUERY STRING EXPLOITS</p><p>&lt;IfModule mod_rewrite.c&gt;</p><p>RewriteCond %{QUERY_STRING} \.\.\/    [NC,OR]</p><p>RewriteCond %{QUERY_STRING} boot\.ini [NC,OR]</p><p>RewriteCond %{QUERY_STRING} tag\=     [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ftp\:     [NC,OR]</p><p>RewriteCond %{QUERY_STRING} http\:    [NC,OR]</p><p>RewriteCond %{QUERY_STRING} https\:   [NC,OR]</p><p>RewriteCond %{QUERY_STRING} mosConfig [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|&lt;|&gt;|&#8217;|&#8221;|;|\?|\*).* [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ^.*(%22|%27|%3C|%3E|%5C|%7B|%7C).* [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127\.0).* [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ^.*(globals|encode|config|localhost|loopback).* [NC,OR]</p><p>RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare|drop).* [NC]</p><p>RewriteRule ^(.*)$ &#8211; [F,L]</p><p>&lt;/IfModule&gt;</p><p><br
class="spacer_" /></p><p># CHARACTER STRINGS</p><p>&lt;IfModule mod_alias.c&gt;</p><p># BASIC CHARACTERS</p><p>RedirectMatch 403 \,</p><p>RedirectMatch 403 \:</p><p>RedirectMatch 403 \;</p><p>RedirectMatch 403 \=</p><p>RedirectMatch 403 \@</p><p>RedirectMatch 403 \[</p><p>RedirectMatch 403 \]</p><p>RedirectMatch 403 \^</p><p>RedirectMatch 403 \`</p><p>RedirectMatch 403 \{</p><p>RedirectMatch 403 \}</p><p>RedirectMatch 403 \~</p><p>RedirectMatch 403 \&#8221;</p><p>RedirectMatch 403 \$</p><p>RedirectMatch 403 \&lt;</p><p>RedirectMatch 403 \&gt;</p><p>RedirectMatch 403 \|</p><p>RedirectMatch 403 \.\.</p><p>RedirectMatch 403 \/\/</p><p>RedirectMatch 403 \%0</p><p>RedirectMatch 403 \%A</p><p>RedirectMatch 403 \%B</p><p>RedirectMatch 403 \%C</p><p>RedirectMatch 403 \%D</p><p>RedirectMatch 403 \%E</p><p>RedirectMatch 403 \%F</p><p>RedirectMatch 403 \%22</p><p>RedirectMatch 403 \%27</p><p>RedirectMatch 403 \%28</p><p>RedirectMatch 403 \%29</p><p>RedirectMatch 403 \%3C</p><p>RedirectMatch 403 \%3E</p><p>RedirectMatch 403 \%3F</p><p>RedirectMatch 403 \%5B</p><p>RedirectMatch 403 \%5C</p><p>RedirectMatch 403 \%5D</p><p>RedirectMatch 403 \%7B</p><p>RedirectMatch 403 \%7C</p><p>RedirectMatch 403 \%7D</p><p># COMMON PATTERNS</p><p>Redirectmatch 403 \_vpi</p><p>RedirectMatch 403 \.inc</p><p>Redirectmatch 403 xAou6</p><p>Redirectmatch 403 db\_name</p><p>Redirectmatch 403 select\(</p><p>Redirectmatch 403 convert\(</p><p>Redirectmatch 403 \/query\/</p><p>RedirectMatch 403 ImpEvData</p><p>Redirectmatch 403 \.XMLHTTP</p><p>Redirectmatch 403 proxydeny</p><p>RedirectMatch 403 function\.</p><p>Redirectmatch 403 remoteFile</p><p>Redirectmatch 403 servername</p><p>Redirectmatch 403 \&amp;rptmode\=</p><p>Redirectmatch 403 sys\_cpanel</p><p>RedirectMatch 403 db\_connect</p><p>RedirectMatch 403 doeditconfig</p><p>RedirectMatch 403 check\_proxy</p><p>Redirectmatch 403 system\_user</p><p>Redirectmatch 403 \/\(null\)\/</p><p>Redirectmatch 403 clientrequest</p><p>Redirectmatch 403 option\_value</p><p>RedirectMatch 403 ref\.outcontrol</p><p># SPECIFIC EXPLOITS</p><p>RedirectMatch 403 errors\.</p><p>RedirectMatch 403 config\.</p><p>RedirectMatch 403 include\.</p><p>RedirectMatch 403 display\.</p><p>RedirectMatch 403 register\.</p><p>Redirectmatch 403 password\.</p><p>RedirectMatch 403 maincore\.</p><p>RedirectMatch 403 authorize\.</p><p>Redirectmatch 403 macromates\.</p><p>RedirectMatch 403 head\_auth\.</p><p>RedirectMatch 403 submit\_links\.</p><p>RedirectMatch 403 change\_action\.</p><p>Redirectmatch 403 com\_facileforms\/</p><p>RedirectMatch 403 admin\_db\_utilities\.</p><p>RedirectMatch 403 admin\.webring\.docs\.</p><p>Redirectmatch 403 Table\/Latest\/index\.</p><p>&lt;/IfModule&gt;</p></blockquote><p>On passe ensuite à l&#8217;installation des plugins de sécurité suivants:</p><ul><li><a
href="http://wordpress.org/extend/plugins/secure-wordpress/">Secure WordPress</a></li><li><a
href="http://wordpress.org/extend/plugins/wp-security-scan/">WP Security Scan</a></li></ul><p>Le premier (Secure WordPress) permet d&#8217;effectuer simplement et automatiquement une liste d&#8217;actions essentielle à la sécurité de votre site:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_032.png" rel="lightbox[3419]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3434" title="Secure WordPress screenshot" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_032-580x337.png" alt="" width="580" height="337" /></a></p><p>Le second (WP Security Scan) effectue régulièrement un scan de l&#8217;arborescence de votre site et remonte dans l&#8217;interface d&#8217;administration de WordPress les fichiers modifiés.</p><h1>Optimisation de WordPress</h1><p>Pour l&#8217;optimisation des performance du blog, je me base sur l&#8217;indispensable plugin <a
href="http://wordpress.org/extend/plugins/w3-total-cache/">W3 Total Cache</a>. Bien qu&#8217;il ne se limite pas qu&#8217;a cela, il permet de mettre facilement en place un système de cache ou les pages sont directement gérées en mémoire RAM plutôt qu&#8217;en lecture sur le disque dur. J&#8217;ai choisi de coupler W3 Total Cache avec Memcached (un cache mémoire sous licence libre).</p><p>L&#8217;installation de Memcached est des plus simple:</p><blockquote><p>sudo aptitude install libcache-memcached-perl memcached</p></blockquote><p>Si votre serveur est protégé par un Firewall (ce que je conseille évidemment&#8230;), il ne faut pas oublier d&#8217;ajouter la règle suivante:</p><blockquote><p>iptables -A OUTPUT -p tcp &#8211;destination 127.0.0.1 &#8211;dport 11211 -j ACCEPT</p></blockquote><p>La configuration de W3 Total Cache se fait via l&#8217;onglet Performance / General settings:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_034.png" rel="lightbox[3419]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3436" title="Sélection_034" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_034-580x461.png" alt="" width="580" height="461" /></a></p><p>Une dernière optimisation consiste à installer le plugin <a
href="http://wordpress.org/extend/plugins/wp-dbmanager/">WP-DBManager </a>et de suivre régulièrement (tout les mois environ) les procédures d&#8217;optimisation (onglet Database).</p><h1>Test et validation</h1><p>Pour tester les performances de votre serveur, vous pouvez utiliser la commande suivante:</p><blockquote><p>ab -t 30 -c 5 http://votreblog.com/</p></blockquote><p>L&#8217;information intéressante se trouve sur la ligne:</p><blockquote><p>Requests per second:    159.46 [#/sec] (mean)</p></blockquote><p>Il est également important de surveiller les paramètres suivant: charge CPU, mémoire RAM disponible, accès disque et réseau. Gandi propose pour cela une interface d&#8217;administration Web avec un système de sonde permettant de remonter des alertes par mail ou même d&#8217;augmenter dynamiquement le nombre de part lors d&#8217;un pic de trafic.</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_035.png" rel="lightbox[3419]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3438" title="Gandi monitoring" src="http://blog.nicolargo.com/wp-content/uploads/2010/08/Sélection_035-580x445.png" alt="" width="580" height="445" /></a></p><p>Personnellement, je surveille mon serveur via <a
href="http://blog.nicolargo.com/nagios-tutoriels-et-documentations">Nagios</a> mais cela sera le sujet d&#8217;un prochain billet&#8230;</p><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3419"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/08/installation-dun-blog-wordpress-sur-un-vps-gandi.html/feed</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>Mes marques ta-pages de la semaine</title><link>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-51.html</link> <comments>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-51.html#comments</comments> <pubDate>Fri, 30 Jul 2010 08:31:04 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Web]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3402</guid> <description><![CDATA[Compiler Ntop depuis les sources sous Ubuntu Des stickers Ubuntu pour votre PC portable ! Tunnels TCP à travers proxy HTTP avec Corkscrew et Proxytunnel Le site pour trouver des brosses (brush) pour Gimp et Photoshop Tutorial d&#8217;introduction aux WebSockets Simplifiez vos sauvegardes avec Grsync Inclure des vidéos YouTube au format HTML5 dans son site/blog [...]]]></description> <content:encoded><![CDATA[<p
style="text-align: center;"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="size-medium wp-image-2106  aligncenter" title="Marques-pages" src="http://blog.nicolargo.com/wp-content/uploads/2009/08/screenshot_003-300x113.png" alt="Marques-pages" width="300" height="113" align="center" /></p><ul
class="blogmarks"><li><a
href="https://help.ubuntu.com/community/Ntop">Compiler Ntop depuis les sources sous Ubuntu</a></li><li><a
href="http://www.omgubuntu.co.uk/2010/07/new-style-stickers-for-sale-in-ubuntu.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+d0od+%28Omg%21+Ubuntu%21%29">Des stickers Ubuntu pour votre PC portable !</a></li><li><a
href="http://blog.uggy.org/post/2010/07/27/Tunnels-TCP-%C3%A0-travers-proxy-HTTP-Corkscrew-et-Proxytunnel">Tunnels TCP à travers proxy HTTP avec Corkscrew et Proxytunnel</a></li><li><a
href="http://blendfu.com/">Le site pour trouver des brosses (brush) pour Gimp et Photoshop</a></li><li><a
href="http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+nettuts+%28NETTUTS%29">Tutorial d&#8217;introduction aux WebSockets</a></li><li><a
href="http://carlchenet.wordpress.com/2010/07/23/simplifiez-vos-sauvegardes-avec-grsync/">Simplifiez vos sauvegardes avec Grsync</a></li><li><a
href="http://www.webupd8.org/2010/07/embed-youtube-videos-in-html5-new.html">Inclure des vidéos YouTube au format HTML5 dans son site/blog</a></li><li><a
href="http://www.tuxradar.com/content/how-create-open-source-community">Un article très intéressant sur comment créer une communauté open-source</a></li><li><a
href="http://www.webupd8.org/2010/07/blender-253-beta-3d-graphics.html">Version 2.53 pour Blender, le 3D Studio libre</a></li><li><a
href="http://webmproject.blogspot.com/2010/07/inside-webm-technology-vp8-intra-and.html">La technologie d&#8217;encodage WebM pour &#8220;for dummy&#8221;</a></li><li><a
href="http://www.planete-urgence.org/missions/?L=FR">Offrer votre temps avec un congés solidaire (Planète urgence)</a></li><li><a
href="http://www.ntop.org/blog/?p=163">Ntop 4 est disponible</a></li><li><a
href="http://wiki.oz9aec.net/index.php/Gstreamer_Cheat_Sheet">Quelques très bonnes pipelines Gstreamer</a></li><li><a
href="http://www.djangoproject.com/">Djando, un Framework Python</a></li></ul><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3402"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-51.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Scrolling fluide sous Chrome/Chromium</title><link>http://blog.nicolargo.com/2010/07/scrolling-fluide-sous-chromechromium.html</link> <comments>http://blog.nicolargo.com/2010/07/scrolling-fluide-sous-chromechromium.html#comments</comments> <pubDate>Thu, 29 Jul 2010 20:46:35 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Open-source]]></category> <category><![CDATA[Web]]></category> <category><![CDATA[chrome]]></category> <category><![CDATA[chromium]]></category> <category><![CDATA[scrolling]]></category> <category><![CDATA[smooth]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3395</guid> <description><![CDATA[Enfin de bénéficier d&#8217;un scrolling fluide (c&#8217;est à la mode avec les smarthphones) sur le navigateur Google Chrome ou Chromium de votre ordinateur personnel, je vous conseille fortement l&#8217;installation du plugin SmoothScrool. Une fois installé, il suffit de se rendre dans les paramètres de configurations du plugins en cliquant sur l&#8217;icône Clès &#62; Tools &#62; [...]]]></description> <content:encoded><![CDATA[<p
style="text-align: right;"><img
style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="size-full wp-image-3397  alignright" title="Sélection_029" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_029.png" alt="" width="250" height="125" /></p><p>Enfin de bénéficier d&#8217;un scrolling fluide (c&#8217;est à la mode avec les smarthphones) sur le navigateur Google Chrome ou Chromium de votre ordinateur personnel, je vous conseille fortement l&#8217;installation <a
href="https://chrome.google.com/extensions/detail/cccpiddacjljmfbbgeimpelpndgpoknn">du plugin SmoothScrool</a>.</p><p>Une fois installé, il suffit de se rendre dans les paramètres de configurations du plugins en cliquant sur l&#8217;icône Clès &gt; Tools &gt; Extensions.</p><p>Personnellement et après quelques tests sur mon portable, j&#8217;utilise les paramètres suivants:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_028.png" rel="lightbox[3395]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-full wp-image-3396" title="Sélection_028" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_028.png" alt="" width="433" height="312" /></a></p><p><em>Update</em>: si vous trouvez le scroll trop lent, vous pouvez augmenter la valeur de &#8220;<strong>Stride size per scroll</strong>&#8221; in pixel à <strong>50</strong> ou plus.</p><p>Le plugin fonctionne parfaitement sur mon Chromium sous Ubuntu 10.04&#8230;</p><p>Encore un plugin indispensable de plus à ajouter à <a
href="http://blog.nicolargo.com/2009/11/extensions-indispensables-pour-chromium.html">sa liste</a>&#8230;</p><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3395"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/scrolling-fluide-sous-chromechromium.html/feed</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Mes marques ta-pages de la semaine</title><link>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-50.html</link> <comments>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-50.html#comments</comments> <pubDate>Fri, 16 Jul 2010 08:30:02 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Web]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3337</guid> <description><![CDATA[Synchronisez vos favoris et onglets entre Firefox et iPhone Webdesign : 21 livres à télécharger gratuitement Formulaire en jQuery et CSS3 Script création paquets sous Ubuntu OuRec une petite application pour enregistrer la sortie de votre carte son Beini Linux, une distro orientée sécurité Wifi 30 mini code jQuery pour vos sites Tuto redimensionnement liquide [...]]]></description> <content:encoded><![CDATA[<div></div><p
style="text-align: center;"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-medium wp-image-2106" title="Marques-pages" src="http://blog.nicolargo.com/wp-content/uploads/2009/08/screenshot_003-300x113.png" alt="Marques-pages" width="300" height="113" align="center" /></p><ul
class="blogmarks"><li><a
href="http://www.presse-citron.net/firefox-home-synchronise-firefox-et-iphone-en-temps-reel">Synchronisez vos favoris et onglets entre Firefox et iPhone<p></a></li><li><a
href="http://www.presse-citron.net/webdesign-21-livres-a-telecharger-gratuitement">Webdesign : 21 livres à télécharger gratuitement<p></a></li><li><a
href="http://tympanus.net/codrops/2010/06/07/fancy-sliding-form-with-jquery/">Formulaire en jQuery et CSS3<p></a></li><li><a
href="http://blog.thelinuxfr.org/Script-creation-paquets-sous.html">Script création paquets sous Ubuntu<p></a></li><li><a
href="http://www.omgubuntu.co.uk/2010/07/quickly-record-soundcard-output-in.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+d0od+%28Omg%21+Ubuntu%21%29&amp;utm_content=Google+Reader">OuRec une petite application pour enregistrer la sortie de votre carte son<p></a></li><li><a
href="http://colibri-libre.org/beini-linux-une-distro-orientee-securite-wifi.html">Beini Linux, une distro orientée sécurité Wifi<p></a></li><li><a
href="http://www.problogdesign.com/coding/30-pro-jquery-tips-tricks-and-strategies/">30 mini code jQuery pour vos sites<p></a></li><li><a
href="http://www.jopa.fr/index.php/2010/07/10/liquid-rescale/">Tuto redimensionnement liquide avec Gimp<p></a></li></ul><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3337"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-50.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Transformer son site/blog en Google Chrome Web Apps</title><link>http://blog.nicolargo.com/2010/07/transformer-son-siteblog-en-google-chrome-web-apps.html</link> <comments>http://blog.nicolargo.com/2010/07/transformer-son-siteblog-en-google-chrome-web-apps.html#comments</comments> <pubDate>Fri, 16 Jul 2010 08:09:52 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Blog]]></category> <category><![CDATA[Developpement]]></category> <category><![CDATA[Open-source]]></category> <category><![CDATA[Web]]></category> <category><![CDATA[apps]]></category> <category><![CDATA[chromium]]></category> <category><![CDATA[ctx]]></category> <category><![CDATA[google chrome]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3326</guid> <description><![CDATA[Dans quelques jours, le Chrome Web Store va ouvrir ses portes. Ce site va permettre au utilisateur de Google Chrome ou de la version libre Chromium d&#8217;installer des applications Web dans leur navigateur. Quelques applications sont déjà disponible (Gmail, Calendar, Google Reader&#8230;), elle se présente sous la forme d&#8217;une icône en haut à gauche des [...]]]></description> <content:encoded><![CDATA[<p><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-full wp-image-3328" title="Sélection_022" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_022.png" alt="" width="488" height="96" /></p><p>Dans quelques jours, le <a
href="https://chrome.google.com/webstore">Chrome Web Store</a> va ouvrir ses portes. Ce site va permettre au utilisateur de Google Chrome ou de la version libre Chromium d&#8217;installer des applications Web dans leur navigateur. Quelques applications sont déjà disponible (Gmail, Calendar, Google Reader&#8230;), elle se présente sous la forme d&#8217;une icône en haut à gauche des onglets et permet l&#8217;accès direct aux sites. Des fonctions de notifications seront bientôt disponibles (par exemple pour vous avertir lors de l&#8217;arrivée d&#8217;un nouveau message).</p><p>Rien de neuf par rapport aux nombreux plugins (extensions) que l&#8217;on peut trouver la toile&#8230; oui et non. En effet, comme nous allons le voir dans ce billet il est très facile de créer une application à partir d&#8217;un site Web existant. On a ainsi un accès immédiat à ces sites.</p><p>Assez de blabla, nous allons voir comment transformer votre site/blog dans une belle application Webs que vous pourrez mettre à disposition de vos lecteurs !</p><p>Toutes les manipulations suivantes marchent aussi bien sous Google Chrome ou sur Chromium (la version libre !). Il faut juste avoir la dernière version (voir instruction <a
href="http://blog.nicolargo.com/2009/09/une-semaine-avec-chromium.html">ici</a> pour Chromium sous GNU/Linux Ubuntu). <span
id="more-3326"></span></p><h1>Activer la prise en charge des Web Apps</h1><p>Avant de commencer, il faut activer la prise en charge des Web Apps dans votre navigateur (cette fonction est en développement et n&#8217;est donc pas active par défaut). Sous GNU/Linux, le plus simple est de modifier le lanceur Gnome (<strong>bouton droit</strong> sur l&#8217;icône puis <strong>Propriétés</strong>).</p><pre class="brush: bash;">chromium-browser  --enable-apps --enable-extension-timeline-api %U</pre><p>Il faut ensuite relancer votre navigateur.</p><h1>Création de votre application</h1><p>Les Google Chrome Webs Apps sont des fichiers au format (.crx). En fait un bête fichier ZIP contenant un répertoire au format <strong>nomapplication_app</strong> et les fichiers suivants:</p><ul><li><strong>manifest.json</strong>: Le fichier principal d&#8217;écrivant votre application</li><li><strong>128.png</strong>: Une icône de 128&#215;128 pixels au format PNG représentant votre application</li><li><strong>24.png</strong>: Une icône de 24&#215;24 pixels au format PNG représentant votre application</li></ul><p>On va donc commencer par créer l&#8217;arborescence suivante: ~/chromiumapps/nicolargo_app/</p><p>On copie ensuite les deux icônes dans le répertoire ~/chromiumapps/nicolargo_app/</p><p>Puis on édite le fichier ~/chromiumapps/nicolargo_app/manifest.json (permettant de créer une application à partir de mon blog):</p><pre class="brush: bash;">

{

&quot;name&quot;: &quot;Le blog de Nicolargo&quot;,

&quot;version&quot;: &quot;1&quot;,

&quot;icons&quot;: {

&quot;128&quot;: &quot;128.png&quot;,

&quot;24&quot;: &quot;24.png&quot;

},

&quot;permissions&quot;: [ &quot;notifications&quot; ],

&quot;app&quot;: {

&quot;launch&quot;: {

&quot;web_url&quot;: &quot;http://blog.nicolargo.com/&quot;

}

}

}
</pre><p>Rien de bien compliqué <img
src='http://blog.nicolargo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><h1>Test de votre application</h1><p>Pour tester l&#8217;application, on clique sur le bouton <img
class="alignnone size-full wp-image-3333" title="toolsmenu" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/toolsmenu.gif" alt="" width="43" height="34" />du navigateur puis on va dans le menu<strong> Tools &gt; Extensions</strong>:</p><p>On clique ensuite sur le bouton <strong>&#8220;+ Developer mode&#8221;</strong>:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_018.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3332" title="Extensions - Chromium_018" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_018-580x488.png" alt="" width="580" height="488" /></a></p><p>Puis sur <strong>&#8220;Load unpacked extension&#8230;&#8221;</strong>:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_019.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3331" title="Extensions - Chromium_019" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_019-580x488.png" alt="" width="580" height="488" /></a></p><p>On sélectionne le répertoire ou se trouve l&#8217;application: ~/chromiumapps/nicolargo_app/, elle devrait se charger:</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_020.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3330" title="Sélection_020" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_020-580x253.png" alt="" width="580" height="253" /></a></p><p>Il ne reste plus qu&#8217;a faire un CTRL-T (pour ouvrir un nouvel onglet et cliquer sur l&#8217;icône de l&#8217;application):</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_024.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3334" title="Sélection_024" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Sélection_024-580x139.png" alt="" width="580" height="139" /></a></p><p>Si tout va bien, l&#8217;application devrait s&#8217;afficher en haut à gauche de votre navigateur !</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Le-blog-de-Nicolargo-Chromium_021.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3329" title="Le blog de Nicolargo - Chromium_021" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Le-blog-de-Nicolargo-Chromium_021-580x488.png" alt="" width="580" height="488" /></a></p><h1>Création du fichier .CTX</h1><p>Maintenant que votre application fonctionne, il faut créer un package pour la distribuer à vos utilisateurs. Chromium (ou Google Chrome) permet d&#8217;automatiser cette création en cliquant sur le bouton <strong>&#8220;Pack extension&#8221;</strong> du menu <strong>&#8220;Extension &gt; + Developer mode&#8221;</strong>. Il suffit de sélectionner le répertoire de votre application: ~/chromiumapps/nicolargo_app/. Le navigateur va automatiquement créer le package ~/chromiumapps/nicolargo_app.ctx (ainsi qu&#8217;une clé privée ~/chromiumapps/nicolargo_app.pem).</p><p><a
href="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_023.png" rel="lightbox[3326]"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-large wp-image-3327" title="Extensions - Chromium_023" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/Extensions-Chromium_023-580x488.png" alt="" width="580" height="488" /></a></p><p>Il ne vous reste plus qu&#8217;a distribuer le fichier nicolargo_app.ctx à vos utilisateur. En attendant la disponibilité du <a
href="https://chrome.google.com/webstore">Chrome Web Store</a> la procédure à suivre pour installer le fichier .ctx sur votre navigateur <a
href="http://www.omgubuntu.co.uk/2010/07/enable-chrome-web-apps-in-chromium-on.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed:+d0od+(Omg!+Ubuntu!)">est disponible ici</a>.</p><p>Pour finir, si vous voulez tester la <a
href="http://www.nicolargo.com/blogdata/nicolargo_app.crx">Web Application du Blog de Nicolargo</a> <a
href="http://www.nicolargo.com/blogdata/nicolargo_app.crx"><img
class="alignnone size-full wp-image-3335" title="Donwload icon" src="http://blog.nicolargo.com/wp-content/uploads/2010/07/arrow-boite-telechargement-icone-7439-32.png" alt="" width="32" height="32" /></a> !</p><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3326"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/transformer-son-siteblog-en-google-chrome-web-apps.html/feed</wfw:commentRss> <slash:comments>9</slash:comments> </item> <item><title>Mes marques ta-pages de la semaine</title><link>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-49.html</link> <comments>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-49.html#comments</comments> <pubDate>Fri, 09 Jul 2010 12:28:46 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Web]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3299</guid> <description><![CDATA[Petite semaine&#8230; Support de l&#8217;iPhone iOS 4 dans Ubuntu Cet été, pour avoir de la lecture sur la plage: Linux Magazine HS special Python 5 touches de raccourcies lors du démarrage d&#8217;Ubuntu Comment construire un package Ubuntu pas à pas]]></description> <content:encoded><![CDATA[<div
style="text-align: left;">Petite semaine&#8230;</div><div><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-medium wp-image-2106" title="Marques-pages" src="http://blog.nicolargo.com/wp-content/uploads/2009/08/screenshot_003-300x113.png" alt="Marques-pages" width="300" height="113" align="center" /></div><ul
class="blogmarks"><li><a
href="http://www.ubuntugeek.com/how-to-get-ios-4-iphone-os-to-sync-with-rhythmbox-in-ubuntu-10-04-lucid.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-get-ios-4-iphone-os-to-sync-with-rhythmbox-in-ubuntu-10-04-lucid">Support de l&#8217;iPhone iOS 4 dans Ubuntu<p></a></li><li><a
href="http://www.gnulinuxmag.com/index.php/2010/07/09/gnulinux-magazine-hs-n%c2%b049-aoutseptembre-2010-chez-votre-marchand-de-journaux">Cet été, pour avoir de la lecture sur la plage: Linux Magazine HS special Python<p></a></li><li><a
href="http://www.omgubuntu.co.uk/2010/07/daily-5-5-keys-to-press-during-burg.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+d0od+%28Omg%21+Ubuntu%21%29&amp;utm_content=Google+Reader">5 touches de raccourcies lors du démarrage d&#8217;Ubuntu<p></a></li><li><a
href="http://grumbel.blogspot.com/2010/05/how-to-build-ubuntu-package.html">Comment construire un package Ubuntu pas à pas</a></li></ul><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3299"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-49.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Mes marques ta-pages de la semaine</title><link>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-48.html</link> <comments>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-48.html#comments</comments> <pubDate>Fri, 02 Jul 2010 09:05:06 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Web]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3280</guid> <description><![CDATA[Une bonne liste de chose à faire après une installation d&#8217;Ubuntu (par OMG Ubuntu) Utiliser une webcam en ligne de commande sous Linux Redo – Le live CD des backups et récupérations de fichiers Créer une distribution Linux Debian avec Novo Bonita, un BPM (Business Process Management) libre Pleins de tutos sur HTML de la [...]]]></description> <content:encoded><![CDATA[<div></div><p
style="text-align: center;"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="size-medium wp-image-2106  aligncenter" title="Marques-pages" src="http://blog.nicolargo.com/wp-content/uploads/2009/08/screenshot_003-300x113.png" alt="Marques-pages" width="300" height="113" align="center" /></p><ul
class="blogmarks"><li><a
href="http://www.omgubuntu.co.uk/2010/07/one-stop-shop-for-ubuntu-customization.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+d0od+%28Omg%21+Ubuntu%21%29&amp;utm_content=Google+Reader">Une bonne liste de chose à faire après une installation d&#8217;Ubuntu (par OMG Ubuntu)<p></a></li><li><a
href="http://www.tux-planet.fr/utiliser-une-webcam-en-ligne-de-commande-sous-linux/">Utiliser une webcam en ligne de commande sous Linux<p></a></li><li><a
href="http://www.korben.info/redo-le-live-cd-des-backups-et-recuperations-de-fichiers.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+KorbensBlog-UpgradeYourMind+%28Korben%27s+Blog+-+Upgrade+Your+Mind%29&amp;utm_content=Google+Reader">Redo – Le live CD des backups et récupérations de fichiers<p></a></li><li><a
href="http://www.korben.info/novo-creez-votre-propre-distribution-linux.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+KorbensBlog-UpgradeYourMind+%28Korben%27s+Blog+-+Upgrade+Your+Mind%29">Créer une distribution Linux Debian avec Novo<p></a></li><li><a
href="http://linuxfr.org/2010/06/23/27049.html">Bonita, un BPM (Business Process Management) libre<p></a></li><li><a
href="http://www.html5rocks.com/tutorials/">Pleins de tutos sur HTML de la part de Google&#8230;<p></a></li><li><a
href="http://www.ubuntugeek.com/setting-up-ubuntu-10-04-lucid-server-with-squid-3-as-a-transparent-proxy.html">Configurer un Linux Ubuntu avec Squid 3 en mode transparent<p></a></li><li><a
href="http://www.soundation.com/studio">Soundation Studio: un studio audio en ligne<p></a></li><li><a
href="http://x264dev.multimedia.cx/?p=472">Liste des choses à prendre en compte pour comparer des codecs vidéos<p></a></li><li><a
href="http://www.webupd8.org/2010/06/vlc-110-final-has-been-released.html">VLC 1.1.0 est là<p></a></li></ul><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3280"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/07/mes-marques-ta-pages-de-la-semaine-48.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Mes marques ta-pages de la semaine</title><link>http://blog.nicolargo.com/2010/06/mes-marques-ta-pages-de-la-semaine-47.html</link> <comments>http://blog.nicolargo.com/2010/06/mes-marques-ta-pages-de-la-semaine-47.html#comments</comments> <pubDate>Fri, 18 Jun 2010 12:51:44 +0000</pubDate> <dc:creator>NicoLargo</dc:creator> <category><![CDATA[Web]]></category><guid
isPermaLink="false">http://blog.nicolargo.com/?p=3241</guid> <description><![CDATA[Introduction aux CDN&#8230; Optimiser son blog avec un système de cache MemCached, le système open-source de cache distribué Sauvegarder son Gmail grâce à Linux FFmpeg 0.6 HTML 5 Ready Plate-forme en ligne de collaboration pour projet open-source Un superbe thème pour lancer son projet !]]></description> <content:encoded><![CDATA[<div></div><p
style="text-align: center;"><img
style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter size-medium wp-image-2106" title="Marques-pages" src="http://blog.nicolargo.com/wp-content/uploads/2009/08/screenshot_003-300x113.png" alt="Marques-pages" width="300" height="113" align="center" /></p><ul
class="blogmarks"><li><a
href="http://www.antoinebenkemoun.fr/2010/06/content-delivery-networks-definition/"> </a><p
style="text-align: left;"><a
href="http://www.antoinebenkemoun.fr/2010/06/content-delivery-networks-definition/">Introduction aux CDN&#8230;</a></p></li><li><a
href="http://www.papygeek.com/wordpress/wordpress-optimiser-son-blog-avec-un-systeme-de-cache/"> </a><a
href="http://www.papygeek.com/wordpress/wordpress-optimiser-son-blog-avec-un-systeme-de-cache/">Optimiser son blog avec un système de cache</a></li><li><a
href="http://memcached.org/"> </a><a
href="http://memcached.org/">MemCached, le système open-source de cache distribué</a></li><li><a
href="http://maxime.sh/2010/06/sauvegarder-son-gmail-grace-a-linux/"> </a><a
href="http://maxime.sh/2010/06/sauvegarder-son-gmail-grace-a-linux/">Sauvegarder son Gmail grâce à Linux</a></li><li><a
href="http://linuxers.org/article/ffmpeg-06-codenamed-works-html5-released"> </a><a
href="http://linuxers.org/article/ffmpeg-06-codenamed-works-html5-released">FFmpeg 0.6 HTML 5 Ready <img
src='http://blog.nicolargo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </a></li><li><a
href="http://gitorious.org/"> </a><a
href="http://gitorious.org/">Plate-forme en ligne de collaboration pour projet open-source</a></li><li><a
href="http://themeforest.net/item/symplex/106299"> </a><a
href="http://themeforest.net/item/symplex/106299">Un superbe thème pour lancer son projet !</a></li></ul><div
id="aspdf"> <a
href="http://blog.nicolargo.com/wp-content/plugins/as-pdf/generate.php?post=3241"> <span> </span> </a></div> ]]></content:encoded> <wfw:commentRss>http://blog.nicolargo.com/2010/06/mes-marques-ta-pages-de-la-semaine-47.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using memcached
Page Caching using memcached
Database Caching using memcached
Object Caching 816/904 objects using memcached

Served from: blog.nicolargo.com @ 2010-09-02 20:07:35 -->