<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Développement internet</title>
	
	<link>http://ligams.net</link>
	<description>Base de connaissance</description>
	<lastBuildDate>Fri, 16 Jul 2010 22:13:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ligams_net" /><feedburner:info uri="ligams_net" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Red5 : Closing RTMPMinaConnection due to long handshake</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/BQut9HNwR4s/</link>
		<comments>http://ligams.net/flash/red5-closing-rtmpminaconnection-due-to-long-handshake/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 22:13:26 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=186</guid>
		<description><![CDATA[Red5 : Closing RTMPMinaConnection due to long handshake
Red5 est un serveur de streaming pour déployer de la vidéo, nous en  avons déjà largement parlé sur ligams.com. L&#8217;un des logs récurrents que l&#8217;on peut  avoir avec Red5 est l&#8217;erreur de handshake.
Cette erreur n&#8217;est pas  issue d&#8217;une cause unique, c&#8217;est pourquoi il est important [...]]]></description>
			<content:encoded><![CDATA[<h1>Red5 : Closing RTMPMinaConnection due to long handshake</h1>
<p>Red5 est un serveur de streaming pour déployer de la vidéo, nous en  avons déjà largement parlé sur <a href="http://www.ligams.com" target="_blank">ligams.com</a>. L&#8217;un des logs récurrents que l&#8217;on peut  avoir avec Red5 est l&#8217;erreur de handshake.</p>
<p>Cette erreur n&#8217;est pas  issue d&#8217;une cause unique, c&#8217;est pourquoi il est important de bien en identifier la cause et de respecter la logique des concepteurs de Red5. Si vous n&#8217;êtes pas familier avec Red5, voici déjà comment <a href="http://www.ligams.com/Publications/Linux/Installer-Red5-Gentoo-Release-OVH" target="_blank">installer un serveur Red5</a>.</p>
<h2>Causes du long handshake</h2>
<ul>
<li>L&#8217;<a href="http://www.ligams.com/Publications/Linux/Creation-d-application-Red5">application Red5</a> est mal installée : en réalité votre client <strong>Flash/Flex</strong> cherche à se connecter à une application qui n&#8217;existe pas, le serveur renverra donc false lors de la connexion.</li>
<li>L&#8217;application met trop de temps à répondre : cela se produit si le <strong>timeout </strong>survient, par défaut, il est de 5 secondes ce qui est largement suffisant; mais vous pouvez tout de même <strong>augmenter la valeur du timeout dans la conf Red5</strong>.</li>
<li>L&#8217;une des méthodes <strong>appConnect</strong>, <strong>appJoin</strong>, <strong>RoomConnect </strong>ou <strong>RoomJoin </strong>renvoi false, cela génère un <strong>long handshake</strong>.</li>
</ul>
<p>C&#8217;est ce 3e cas dont nous allons parler.</p>
<h2>Erreur fréquente</h2>
<p>Voici une erreur fréquente à ne pas faire :</p>
<pre class="brush: java;">
public boolean appConnect( IConnection conn , Object[] params )
{
//processus d'authentification
if(authentification)
{
return true;
}
else
{
rejectClient(&quot;Erreur d'authentification&quot;);
//il faudrait renvoyer vrai
return false;
}
}
</pre>
<p>Retourner false signifie en réalité que quelque chose s&#8217;est produit dans connexion à l&#8217;application Red5, il ne faut pas renvoyer false lorsque celle ci s&#8217;est bien déroulée. Il en va de même pour les méthodes appConnect, appJoin, RoomConnect et RoomJoin.</p>
<p>Appeler la méthode parente et renvoyer son résultat  est bien plus correct; au pire, renvoyez true systématiquement si vous n&#8217;invoquez pas la méthode de la super classe ApplicationAdapter.</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/BQut9HNwR4s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/flash/red5-closing-rtmpminaconnection-due-to-long-handshake/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/flash/red5-closing-rtmpminaconnection-due-to-long-handshake/</feedburner:origLink></item>
		<item>
		<title>TextInput Focus</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/uNNLnZOkqUw/</link>
		<comments>http://ligams.net/flash/textinput-focus/#comments</comments>
		<pubDate>Thu, 06 May 2010 20:26:57 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=180</guid>
		<description><![CDATA[Lorsque l&#8217;on focus un TextInput, on souhaite souvent que le focus se place &#8220;à la fin&#8221; du texte et ne sélectionne pas le texte par défault lorsque l&#8217;on utilise la tabulation, on peut créer simplement ce comportement à l&#8217;aide d&#8217;un écouteur :

txt.addEventListener(FocusEvent.FOCUS_IN,setFocusTxt);

function setFocusTxt(event:FocusEvent):void
{
event.preventDefault();
stage.focus = txt;
txt.setSelection(this.txt_input.length,this.txt_input.length);

}

Cela évite la sélection du texte par défaut et prévient d&#8217;éventuelles [...]]]></description>
			<content:encoded><![CDATA[<p>Lorsque l&#8217;on focus un TextInput, on souhaite souvent que le focus se place &#8220;à la fin&#8221; du texte et ne sélectionne pas le texte par défault lorsque l&#8217;on utilise la tabulation, on peut créer simplement ce comportement à l&#8217;aide d&#8217;un écouteur :</p>
<pre class="brush: jscript;">
txt.addEventListener(FocusEvent.FOCUS_IN,setFocusTxt);

function setFocusTxt(event:FocusEvent):void
{
event.preventDefault();
stage.focus = txt;
txt.setSelection(this.txt_input.length,this.txt_input.length);

}
</pre>
<p>Cela évite la sélection du texte par défaut et prévient d&#8217;éventuelles erreurs de saisie dans ce cas. Libre à chacun d&#8217;adapter cette fonction à ses besoins <img src='http://ligams.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/uNNLnZOkqUw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/flash/textinput-focus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/flash/textinput-focus/</feedburner:origLink></item>
		<item>
		<title>Zend Studio : Lenteurs</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/3phPxSjQiDc/</link>
		<comments>http://ligams.net/php/zend-studio-lenteurs/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 22:40:05 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Php]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=174</guid>
		<description><![CDATA[Vous l&#8217;avez sans doute remarqué si vous utilisez Zend Studio, il est diablement lent lorsqu&#8217;il construit le projet etc. C&#8217;est très pénible. Il est néanmoins possible de le rendre nettement moins lent en supprimant des fonctionnalités :
Supprimer l&#8217;analyse sémantique
La fonctionnalité d&#8217;analyse sémantique permet de détecter les erreurs &#38; avertissements dans vos scripts à la volée; [...]]]></description>
			<content:encoded><![CDATA[<p>Vous l&#8217;avez sans doute remarqué si vous utilisez Zend Studio, il est diablement lent lorsqu&#8217;il construit le projet etc. C&#8217;est très pénible. Il est néanmoins possible de le rendre nettement moins lent en supprimant des fonctionnalités :</p>
<h2>Supprimer l&#8217;analyse sémantique</h2>
<p>La fonctionnalité d&#8217;analyse sémantique permet de détecter les erreurs &amp; avertissements dans vos scripts à la volée; cette fonctionnalité fait énormément ramer et n&#8217;est pas réellement utile dans la mesure ou la sauvegarde du script affichera ces erreurs.</p>
<div id="attachment_175" class="wp-caption alignnone" style="width: 160px"><a rel="lightbox" href="http://ligams.net/files/2010/03/zend-studio-enable-semantic-analysis.jpg"><img class="size-thumbnail wp-image-175" title="zend-studio-enable-semantic-analysis" src="http://ligams.net/files/2010/03/zend-studio-enable-semantic-analysis-150x150.jpg" alt="Analyse sémanque Visual Studio" width="150" height="150" /></a><p class="wp-caption-text">Analyse sémanque Visual Studio</p></div>
<p>En décochant cette option, vous devriez constater une amélioration notable des performances de Zend Studio.</p>
<h2>Méta données de Versionnage (Fichiers .svn par exemple)</h2>
<p>Si vous utilisez une application de versionnage (comme Subversion dans mon cas), supprimer l&#8217;indexation de ses dossiers sera un gain énorme. Notez que je n&#8217;utilise pas l&#8217;extension d&#8217;Eclipse pour subversion mais Tortoise sur windows et son équivalent linux Rabbit VCS.</p>
<p>Clic droit sur le projet &gt;&gt; Build path &gt;&gt; configure include/exclude</p>
<div id="attachment_177" class="wp-caption alignnone" style="width: 160px"><a rel="lightbox" href="http://ligams.net/files/2010/03/zend-studio-configure-build-path.jpg"><img class="size-thumbnail wp-image-177" title="zend-studio-configure-build-path" src="http://ligams.net/files/2010/03/zend-studio-configure-build-path-150x150.jpg" alt="Zend studio configure buildpath" width="150" height="150" /></a><p class="wp-caption-text">Zend studio configure buildpath</p></div>
<p>Dans exclude, ajouter des pattern du genre */.svn/*</p>
<div id="attachment_178" class="wp-caption alignnone" style="width: 160px"><a rel="lightbox" href="http://ligams.net/files/2010/03/zend-studio-exclusion-pattern.jpg"><img class="size-thumbnail wp-image-178" title="zend-studio-exclusion-pattern" src="http://ligams.net/files/2010/03/zend-studio-exclusion-pattern-150x150.jpg" alt="Zend Studio Exclusion Pattern" width="150" height="150" /></a><p class="wp-caption-text">Zend Studio Exclusion Pattern</p></div>
<p>Voila qui devrait améliorer votre Zend Studio <img src='http://ligams.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/3phPxSjQiDc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/php/zend-studio-lenteurs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ligams.net/php/zend-studio-lenteurs/</feedburner:origLink></item>
		<item>
		<title>Ajouter la gestion d’extensions dans Zend Studio</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/cFU6_95VdSU/</link>
		<comments>http://ligams.net/php/gestion-dextensions-zend-studio/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 23:07:13 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Php]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=167</guid>
		<description><![CDATA[Lorsque l&#8217;on utilise certains frameworks (cakePHP, Symphony, Smarty et j&#8217;en oublie) ou gestionnaires de templates, on est confronté à un problème d&#8217;affichage de certains fichiers relatifs à ces frameworks : par exemple, cakePHP utilise l&#8217;extension .ctp pour les fichiers de templates (.ctp pour cakePHP template j&#8217;imagine).
C&#8217;est vraiment très chiant car l&#8217;intérêt d&#8217;utiliser un IDE comme [...]]]></description>
			<content:encoded><![CDATA[<p>Lorsque l&#8217;on utilise certains frameworks (cakePHP, Symphony, Smarty et j&#8217;en oublie) ou gestionnaires de templates, on est confronté à un problème d&#8217;affichage de certains fichiers relatifs à ces frameworks : par exemple, cakePHP utilise l&#8217;extension .ctp pour les fichiers de templates (.ctp pour cakePHP template j&#8217;imagine).<br />
C&#8217;est vraiment très chiant car l&#8217;intérêt d&#8217;utiliser un IDE comme zend est justement de bénéficier de l&#8217;<a href="http://ligams.net/php/eclipse-completion-php-phpeclipse/">autocomplétion</a> ou même de la coloration syntaxique. Le remède est simple, il suffit d&#8217;attribuer  un type à chaque extension de fichier.</p>
<h2>Procédure</h2>
<p>Dans le menu principal, sélectionnez <strong>window </strong>puis <strong>preferences</strong> :</p>
<div id="attachment_168" class="wp-caption aligncenter" style="width: 160px"><a rel="lightbox" href="http://ligams.net/files/2010/03/zend-studio-extensions.jpg"><img class="size-thumbnail wp-image-168" title="zend-studio-extensions" src="http://ligams.net/files/2010/03/zend-studio-extensions-150x150.jpg" alt="Zend Studio, gestion des extensions" width="150" height="150" /></a><p class="wp-caption-text">Zend Studio, gestion des extensions</p></div>
<p>Dans le menu général, sélectionnez COntent Types, dans le menu contextuel qui apparaît à gauche, le type de fichier qui correspond à vos attentes, dans le cas d&#8217;un fichier  template cakePHP, j&#8217;ai choisi PHP Content Type.</p>
<p>Cliquez ensuite sur le bouton Add, et ajoutez votre extension, dans cet exemple *.ctp.</p>
<h2>Vérification</h2>
<p>Maintenant, pour vérifier que vous avez correctement ajouté le type, toujours dans Window &gt;&gt; Preferences, sélectionnez Editors &gt;&gt; File Associations dans le menu de gauche.</p>
<p>Cliquez ensuite sur le bouton Add, et ajoutez la même extension, vous devriez voir apparaître en bas les éditeurs associés :</p>
<div id="attachment_169" class="wp-caption aligncenter" style="width: 160px"><a rel="lightbox" href="http://ligams.net/files/2010/03/zend-studio-editors.jpg"><img class="size-thumbnail wp-image-169" title="zend-studio-editors" src="http://ligams.net/files/2010/03/zend-studio-editors-150x150.jpg" alt="Zend studio Editors" width="150" height="150" /></a><p class="wp-caption-text">Zend studio Editors</p></div>
<p>Maintenant, vous pouvez ouvrir ces fichiers en les éditant de la même manière que les extensions moins exotiques.</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/cFU6_95VdSU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/php/gestion-dextensions-zend-studio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/php/gestion-dextensions-zend-studio/</feedburner:origLink></item>
		<item>
		<title>FBML dans une application IFRAME</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/yfPK3DaiANQ/</link>
		<comments>http://ligams.net/facebook/fbml-application-iframe/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 15:10:36 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Facebook]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=161</guid>
		<description><![CDATA[Voici une façon de développer des applications IFrame Facebook. Je pars du principe que vous avez une connaissance de la manière de développer sur Facebook.
Tout d&#8217;abord créez un fichier  xd_receiver.htm à la racine de votre application.
Ajoutez ce code dans le fichier xd_receiver.htm :

&#60;!DOCTYPE html PUBLIC &#34;-//W3C//DTD XHTML 1.0 Strict//EN&#34; &#34;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&#34;&#62;
&#60;html xmlns=&#34;http://www.w3.org/1999/xhtml&#34; &#62;
&#60;head&#62;
&#60;title&#62;Cross-Domain Receiver Page&#60;/title&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;script src=&#34;http://static.ak.facebook.com/js/api_lib/v0.4/XdCommReceiver.debug.js&#34; [...]]]></description>
			<content:encoded><![CDATA[<p>Voici une façon de développer des applications IFrame Facebook. Je pars du principe que vous avez une connaissance de la manière de développer sur Facebook.</p>
<p>Tout d&#8217;abord créez un fichier  <em>xd_receiver.htm</em> à la racine de votre application.</p>
<p>Ajoutez ce code dans le fichier xd_receiver.htm :</p>
<pre class="brush: xml;">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; &gt;
&lt;head&gt;
&lt;title&gt;Cross-Domain Receiver Page&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;script src=&quot;http://static.ak.facebook.com/js/api_lib/v0.4/XdCommReceiver.debug.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Dans la page de vos pages n&#8217;oubliez pas d&#8217;ajouter l&#8217;espace de nom Facebook :</p>
<pre class="brush: xml;">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xmlns:fb=&quot;http://www.facebook.com/2008/fbml&quot;&gt;
</pre>
<p>Appeller l&#8217;api JS de facebook dans la balise &lt;head&gt; de votre document HTML :</p>
<pre class="brush: xml;">
&lt;script src=&quot;http://static.ak.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</pre>
<p>Vous pouvez insérer ensuite du code FBML dans vos pages :</p>
<pre class="brush: xml;">
&lt;fb:serverfbml&gt;
 &lt;script type=”text/fbml”&gt;
  &lt;fb:fbml&gt;
    &lt;fb:request-form action=&quot;http://monapp.com/do.php&quot;
                     method=&quot;POST&quot;
                     invite=&quot;true&quot;
                     type=&quot;XFBML&quot;
                     content=&quot;content&quot;&gt;
       &lt;fb:multi-friend-selector showborder=&quot;false&quot; actiontext=&quot;Invitez vos amis.&quot;&gt;
    &lt;/fb:request-form&gt;
  &lt;/fb:fbml&gt;
  &lt;/script&gt;
&lt;/fb:serverfbml&gt;
</pre>
<p>Ce code doit être placé après les éléments FBML placés dans vos pages :</p>
<pre class="brush: xml;">
&lt;script type=&quot;text/javascript&quot;&gt;
FB_RequireFeatures([&quot;XFBML&quot;], function()
{
  FB.Facebook.init(&quot;____API_KEY____&quot;, &quot;xd_receiver.htm&quot;);
});
&lt;/script&gt;
</pre>
<p>Voilà, en espérant que cela puisse aider certains</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/yfPK3DaiANQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/facebook/fbml-application-iframe/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://ligams.net/facebook/fbml-application-iframe/</feedburner:origLink></item>
		<item>
		<title>Eclipse et complétion PHP : PHPEclipse</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/ivv7Zrv5Wbg/</link>
		<comments>http://ligams.net/php/eclipse-completion-php-phpeclipse/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 18:01:47 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Php]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=158</guid>
		<description><![CDATA[Bien que n&#8217;ayant pas trouvé d&#8217;outil parfait pour développer en PHP, Eclipse reste une valeur sûre. En récupérant la version d&#8217;eclipse spéciale pour PHP, j&#8217;ai constaté avec effroi que l&#8217;autocomplétion n&#8217;était pas activée par défaut dans mon projet.
Pour l&#8217;activer, faites un clic droit sur votre projet &#62; configure &#62; Add PHP Support
]]></description>
			<content:encoded><![CDATA[<p>Bien que n&#8217;ayant pas trouvé d&#8217;outil parfait pour développer en PHP, Eclipse reste une valeur sûre. En récupérant la version d&#8217;eclipse spéciale pour PHP, j&#8217;ai constaté avec effroi que l&#8217;autocomplétion n&#8217;était pas activée par défaut dans mon projet.</p>
<p>Pour l&#8217;activer, faites un clic droit sur votre projet &gt; configure &gt; <strong>Add PHP Support</strong></p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/ivv7Zrv5Wbg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/php/eclipse-completion-php-phpeclipse/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ligams.net/php/eclipse-completion-php-phpeclipse/</feedburner:origLink></item>
		<item>
		<title>Boucle for smarty</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/YcNBa7-GSWQ/</link>
		<comments>http://ligams.net/php/boucle-for-smarty/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 12:58:08 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Php]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=151</guid>
		<description><![CDATA[Vous n&#8217;êtes pas sans connaître le formidable moteur de template Smarty, celui-ci est très complet et très facile à utiliser. Je parcourais à l&#8217;instant vainement la documentation à la recherche d&#8217;une simple boucle for, qui est absente alors qu&#8217;il existe foreach pour parcourir un tableau assigné depuis PHP.
Il faut en fait utiliser la balise section [...]]]></description>
			<content:encoded><![CDATA[<p>Vous n&#8217;êtes pas sans connaître le formidable moteur de template <a href="http://www.smarty.net" target="_blank">Smarty</a>, celui-ci est très complet et très facile à utiliser. Je parcourais à l&#8217;instant vainement la documentation à la recherche d&#8217;une simple <strong>boucle for</strong>, qui est absente alors qu&#8217;il existe <strong>foreach</strong> pour parcourir un tableau assigné depuis PHP.</p>
<p>Il faut en fait utiliser la balise section de cette manière :</p>
<pre class="brush: php;">
{section name=foo start=1970 loop=2010}
	{$smarty.section.foo.index}
{/section}
</pre>
<p>On a ainsi généré un sélecteur de date (année) de 1970 à 2010.</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/YcNBa7-GSWQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/php/boucle-for-smarty/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ligams.net/php/boucle-for-smarty/</feedburner:origLink></item>
		<item>
		<title>Compression GZIP</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/-xnfHHFdcCM/</link>
		<comments>http://ligams.net/apache/compression-gzip/#comments</comments>
		<pubDate>Sat, 12 Dec 2009 14:02:31 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=144</guid>
		<description><![CDATA[AddOutputFilterByType DEFLATE text/plain text/css application/x-javascript text/javascript text/xml text/html
Si vous utilisez GWT (Google Webmaster Tools), vous avez pu constater qu&#8217;il donne des pistes d&#8217;amélioration pour la performance des sites internet, j&#8217;ai constaté pour un site un peu lent que GWT suggérait :
Autoriser la compression à l&#8217;aide de gzip
Pour faire cela, il va falloir modifier les paramètres [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush: bash;">AddOutputFilterByType DEFLATE text/plain text/css application/x-javascript text/javascript text/xml text/html</pre>
<p>Si vous utilisez GWT (Google Webmaster Tools), vous avez pu constater qu&#8217;il donne des pistes d&#8217;amélioration pour la performance des sites internet, j&#8217;ai constaté pour un site un peu lent que GWT suggérait :</p>
<blockquote><p>Autoriser la compression à l&#8217;aide de gzip</p></blockquote>
<p>Pour faire cela, il va falloir modifier les paramètres d&#8217;<a href="/apache">Apache</a>. Il faut tout d&#8217;abord charger les modules deflate et headers, sur une configuration debian classique cela donne dans le fichier de configuration d&#8217;Apache  :</p>
<pre class="brush: bash;">
LoadModule deflate_module /usr/lib/apache2/modules/mod_deflate.so
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so
</pre>
<p>La configuration de deflate est gérée dans le fichier deflate.conf du répertoire mods-available, il faut y ajouter :</p>
<pre class="brush: bash;">
AddOutputFilterByType DEFLATE text/plain text/css application/x-javascript text/xml text/html
</pre>
<p>Puis redémarrer Apache :</p>
<pre class="brush: bash;">
/etc/init.d/apache2 restart
</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/-xnfHHFdcCM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/apache/compression-gzip/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://ligams.net/apache/compression-gzip/</feedburner:origLink></item>
		<item>
		<title>La dure vie des développeurs web</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/tDu6duRom2c/</link>
		<comments>http://ligams.net/humour/la-dure-vie-des-developpeurs-web/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 16:54:52 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Humour]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=142</guid>
		<description><![CDATA[La dure vie d&#8217;un développeur web, par Thibault Jouannic, ça mérite d&#8217;être regardé  
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.miximum.fr/humour/409-la-dure-vie-des-developpeurs-web/trackback">La dure vie d&#8217;un développeur web</a>, par <a href="http://thibault.jouannic.fr">Thibault Jouannic</a>, ça mérite d&#8217;être regardé <img src='http://ligams.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/tDu6duRom2c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/humour/la-dure-vie-des-developpeurs-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/humour/la-dure-vie-des-developpeurs-web/</feedburner:origLink></item>
		<item>
		<title>Editer fichier PDF</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/HAQpjig2WP4/</link>
		<comments>http://ligams.net/bureautique/editer-fichier-pdf/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 13:38:49 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Bureautique]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=138</guid>
		<description><![CDATA[Le PDF posant souvent des problèmes en terme d&#8217;édition puisqu&#8217;il s&#8217;agit d&#8217;un format propriétaire compilé, il existe plusieurs solutions pour éditer ce format. L&#8217;une d&#8217;elle est d&#8217;utiliser un plugin gratuit pour staroffice/openofffice disponible respectivement à partir des version 9 et 3 de ces logiciels.
Ce plugin est disponible sur le site de Sun. Il s&#8217;intitule PDFImport
Vous [...]]]></description>
			<content:encoded><![CDATA[<p>Le PDF posant souvent des problèmes en terme d&#8217;édition puisqu&#8217;il s&#8217;agit d&#8217;un format propriétaire compilé, il existe plusieurs solutions pour éditer ce format. L&#8217;une d&#8217;elle est d&#8217;utiliser un plugin gratuit pour <strong>staroffice</strong>/<strong>openofffice</strong> disponible respectivement <strong>à partir des version 9 et 3 de ces logiciels</strong>.</p>
<p>Ce plugin est disponible sur le <a href="http://extensions.services.openoffice.org/project/pdfimport">site de Sun</a>. Il s&#8217;intitule PDFImport</p>
<p>Vous pourrez ensuite <strong>éditer/importer vos fichiers PDF</strong>, selon la protection de ceux-ci.</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/HAQpjig2WP4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/bureautique/editer-fichier-pdf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/bureautique/editer-fichier-pdf/</feedburner:origLink></item>
		<item>
		<title>Feedburner RSS htaccess</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/hq-wjLOf57E/</link>
		<comments>http://ligams.net/apache/feedburner-htaccess-statistiques/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 14:54:46 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=135</guid>
		<description><![CDATA[Si vous avez en place un flux rss depuis un moment et que vous souhaitez obtenir des statistiques sur celui-ci, vous pouvez utiliser feedburner qui est fait pour ça. Un problème va cependant se poser, les utilisateurs qui auront déjà souscrit à votre flux ne seront pas comptabilisés dans ces statistiques.
Vous pouvez alors effectuer une [...]]]></description>
			<content:encoded><![CDATA[<p>Si vous avez en place un <strong>flux rss</strong> depuis un moment et que vous souhaitez obtenir des <strong>statistiques</strong> sur celui-ci, vous pouvez utiliser feedburner qui est fait pour ça. Un problème va cependant se poser, les utilisateurs qui auront déjà souscrit à votre flux ne seront pas comptabilisés dans ces statistiques.</p>
<p>Vous pouvez alors <strong>effectuer une redirection htaccess</strong> (ou directement dans vos paramètres <a href="http://ligams.net/apache">apache</a>) de votre flux initial (disons http://www.monsite.com/rss.xml vers http://feeds.feedburner.com/monsite). Cependant <strong>attention aux règles</strong> que vous placez dans votre htaccess, car il faut que votre flux reste <strong>accessible au robot de feedburner</strong>, sinon, il ne pourra plus s&#8217;afficher, vous pouvez faire ainsi :</p>
<pre class="brush: bash;">
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
 RewriteRule ^/rss\.xml$ http://feeds.feedburner.com/monsite [L,R=302]
</pre>
<p>Ainsi, le robot lira de manière normale votre flux et les utilisateurs de votre flux habituel seront redirigés vers sa réplique FeedBurner, ce qui permettra d&#8217;intégrer les utilisateurs déjà inscrits à vos statistiques RSS.</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/hq-wjLOf57E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/apache/feedburner-htaccess-statistiques/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/apache/feedburner-htaccess-statistiques/</feedburner:origLink></item>
		<item>
		<title>Evenement onload</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/4d7EPZM8Fao/</link>
		<comments>http://ligams.net/javascript/evenement-onload/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 11:43:25 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=133</guid>
		<description><![CDATA[Comment lancer une fonction Javascript au chargement d&#8217;une page web (onLoad). Si vous codez en Javascript dans votre page HTML, cela ne pose pas de problème majeur :

&#60;script type=&#34;text/javascript&#34;&#62;
function Init()
{
alert('coucou');
}
&#60;/script&#62;
&#60;body onload='Init()'&#62;

Si par contre vous n&#8217;utilisez pas de framework JS particulier comme Prototype, Yahoo! ou JQuery, vous constaterez avec effroi qu&#8217;externaliser cette méthode dans un fichier [...]]]></description>
			<content:encoded><![CDATA[<p>Comment lancer une fonction Javascript au chargement d&#8217;une page web (onLoad). Si vous codez en <strong>Javascript dans votre page HTML</strong>, cela ne pose pas de problème majeur :</p>
<pre class="brush: xml;">
&lt;script type=&quot;text/javascript&quot;&gt;
function Init()
{
alert('coucou');
}
&lt;/script&gt;
&lt;body onload='Init()'&gt;
</pre>
<p>Si par contre vous n&#8217;utilisez pas de <strong>framework JS</strong> particulier comme <a href="http://www.ligams.com/Publications/Javascript/Framework-Prototype-JS">Prototype</a>, Yahoo! ou JQuery, vous constaterez avec effroi qu&#8217;externaliser cette méthode dans un fichier Javascript pose des <strong>problèmes de compatibilité entre les navigateurs</strong>, voici comment faire :</p>
<pre class="brush: jscript;">
function Init()
 {
 alert('coucou');
 }
onload = Init;
</pre>
<p>Cela fonctionne sur tous les navigateurs que j&#8217;ai testé (c&#8217;est à dire quand même pas mal : IE5+, Firefox, Opera, Safari, Chrome etc.)</p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/4d7EPZM8Fao" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/javascript/evenement-onload/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/javascript/evenement-onload/</feedburner:origLink></item>
		<item>
		<title>Forcer le téléchargement d’un type de fichier sur Apache</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/e_8UueuxjIo/</link>
		<comments>http://ligams.net/apache/forcer-telechargement-fichier-apache/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 09:44:28 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=130</guid>
		<description><![CDATA[Pour forcer le téléchargement d&#8217;un type de fichier, on peut utiliser plusieurs méthodes. Ca peut être utile si par exemple vous souhaitez que les fichiers PDF soient téléchargés et pas simplement affichés dans le navigateur.
Nous utiliserons le fichier de configuration d&#8217;apache :

AddType application/octet-stream .pdf .zip .rar

Ainsi, les fichiers PDF ZIP et RAR seront téléchargés.
Autre méthode [...]]]></description>
			<content:encoded><![CDATA[<p>Pour forcer le téléchargement d&#8217;un type de fichier, on peut utiliser plusieurs méthodes. Ca peut être utile si par exemple vous souhaitez que les fichiers PDF soient téléchargés et pas simplement affichés dans le navigateur.</p>
<p>Nous utiliserons le fichier de configuration d&#8217;apache :</p>
<pre class="brush: bash;">
AddType application/octet-stream .pdf .zip .rar
</pre>
<p>Ainsi, les fichiers PDF ZIP et RAR seront téléchargés.</p>
<p>Autre méthode :</p>
<pre class="brush: bash;">
&lt;FilesMatch &quot;\.(pdf|zip|rar)$&quot;&gt;
ForceType application/octet-stream
Header set Content-Disposition attachment
&lt;/FilesMatch&gt;
</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/e_8UueuxjIo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/apache/forcer-telechargement-fichier-apache/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://ligams.net/apache/forcer-telechargement-fichier-apache/</feedburner:origLink></item>
		<item>
		<title>Red5 log</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/T7WJG0br7og/</link>
		<comments>http://ligams.net/linux/red5-log/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 00:27:17 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=127</guid>
		<description><![CDATA[Je n&#8217;avais pas les logs red5 par défaut après l&#8217;installation, il m&#8217;a fallu ajouter les lignes suivantes au fichier de configuration des logs : log4j.properties (/path/to/red5/conf/conf/log4j.properties)

log4j.rootLogger=DEBUG, FLOG
log4j.appender.FLOG=org.apache.log4j.RollingFileAppender
log4j.appender.FLOG.File=red5.log
log4j.appender.FLOG.Threshold=DEBUG

]]></description>
			<content:encoded><![CDATA[<p>Je n&#8217;avais pas les logs red5 par défaut après l&#8217;installation, il m&#8217;a fallu ajouter les lignes suivantes au fichier de configuration des logs : <strong>log4j.properties </strong>(/path/to/red5/conf/conf/log4j.properties)</p>
<pre class="brush: bash;">
log4j.rootLogger=DEBUG, FLOG
log4j.appender.FLOG=org.apache.log4j.RollingFileAppender
log4j.appender.FLOG.File=red5.log
log4j.appender.FLOG.Threshold=DEBUG
</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/T7WJG0br7og" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/linux/red5-log/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/linux/red5-log/</feedburner:origLink></item>
		<item>
		<title>Red5 Iptables firewall</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/tHvgCbHGqSg/</link>
		<comments>http://ligams.net/linux/red5-iptables-firewall/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 14:23:36 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=124</guid>
		<description><![CDATA[Pour utiliser un serveur Red5 et utiliser le protocole RTMP (Real-Time Messaging Protocol), il faut débloquer le port 1935 (si vous utilisez le port par défaut de Red5) en TCP :
Il faut donc ajouter ceci aux règles du pare-feu, ou l&#8217;éxecuter dans une console si vous utiliser linux, sinon, débloquer le port 1935 (protocole TCP) [...]]]></description>
			<content:encoded><![CDATA[<p>Pour utiliser un <a href="http://www.ligams.com/Publications/Linux/Installation-Red5">serveur Red5</a> et utiliser le protocole RTMP (Real-Time Messaging Protocol), il faut débloquer le port 1935 (si vous utilisez le port par défaut de Red5) en TCP :</p>
<p>Il faut donc ajouter ceci aux règles du pare-feu, ou l&#8217;éxecuter dans une console si vous utiliser linux, sinon, débloquer le port 1935 (protocole TCP) :</p>
<pre class="brush: bash;">
# RTMP
iptables -A OUTPUT -p tcp --dport 1935 -j ACCEPT
iptables -A INPUT -p tcp --dport 1935 -j ACCEPT
echo &quot;- Autoriser RTMP entrant/sortant  : [OK]&quot;
</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/tHvgCbHGqSg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/linux/red5-iptables-firewall/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/linux/red5-iptables-firewall/</feedburner:origLink></item>
		<item>
		<title>Installer Java sur Debian Etch et Lenny</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/el0i0JuwWm4/</link>
		<comments>http://ligams.net/linux/installer-java-debian-etch-lenny/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 09:23:05 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=108</guid>
		<description><![CDATA[Ajouter tout d&#8217;abord le dépôt correct dans /etc/apt/sources.list :
deb http://ftp.fr.debian.org/debian etch main contrib
#ou
deb http://ftp.fr.debian.org/debian lenny main contrib&#60;br /&#62;

On installe ensuite Java :

apt-get update
apt-get install sun-java6-jre
apt-get install sun-java6-plugin
apt-get install sun-java6-jdk
apt-get install sun-java6-fonts

Pour vérifier que java a bien été installé
java -version
]]></description>
			<content:encoded><![CDATA[<p>Ajouter tout d&#8217;abord le dépôt correct dans /etc/apt/sources.list :</p>
<pre class="brush: bash;">deb http://ftp.fr.debian.org/debian etch main contrib
#ou
deb http://ftp.fr.debian.org/debian lenny main contrib&lt;br /&gt;
</pre>
<p>On installe ensuite Java :</p>
<pre class="brush: bash;">
apt-get update
apt-get install sun-java6-jre
apt-get install sun-java6-plugin
apt-get install sun-java6-jdk
apt-get install sun-java6-fonts
</pre>
<p>Pour vérifier que java a bien été installé</p>
<pre class="brush: bash;">java -version</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/el0i0JuwWm4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/linux/installer-java-debian-etch-lenny/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://ligams.net/linux/installer-java-debian-etch-lenny/</feedburner:origLink></item>
		<item>
		<title>Completion Flashdevelop FLVPlayback</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/2cKtiFq92j8/</link>
		<comments>http://ligams.net/flash/completion-flashdevelop-flvplayback/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 19:28:50 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=118</guid>
		<description><![CDATA[Dans un article récent, j&#8217;abordais la possibilité d&#8217;obtenir la complétion à partir d&#8217;un fichier SWC avec Flashdevelop, il est possible de souhaiter obtenir la complétion à partir des bibliothèques/composants Flash natifs livrés avec Flash CS4. COncernant FLVPlayback, on obtient la complétion de cette manière :
Dans flashdevelop :
Tools &#62; Global classpaths, puis add classpath
Ajouter la ligne [...]]]></description>
			<content:encoded><![CDATA[<p>Dans un article récent, j&#8217;abordais la possibilité d&#8217;obtenir la <a href="http://ligams.net/flash/bibliotheque-swc-completion-flashdevelop/">complétion à partir d&#8217;un fichier SWC avec Flashdevelop</a>, il est possible de souhaiter obtenir la complétion à partir des bibliothèques/composants Flash natifs livrés avec <strong>Flash CS4</strong>. COncernant FLVPlayback, on obtient la complétion de cette manière :</p>
<p>Dans flashdevelop :</p>
<p><strong>Tools</strong> &gt; <strong>Global classpaths</strong>, puis <strong>add classpath</strong></p>
<p>Ajouter la ligne suivante :</p>
<pre>C:\Program Files\Adobe\Adobe Flash CS4\Common\Configuration\Component Source\ActionScript 3.0</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/2cKtiFq92j8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/flash/completion-flashdevelop-flvplayback/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/flash/completion-flashdevelop-flvplayback/</feedburner:origLink></item>
		<item>
		<title>Rkhunter debian</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/7bOA_LOslXg/</link>
		<comments>http://ligams.net/linux/rkhunter-debian/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 13:35:51 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=113</guid>
		<description><![CDATA[Rkhunter est un anti rootkit pour Debian, l&#8217;installation est simple à partir des dépôts :

apt-get update
apt-get install rkhunter

Mise à jour :

rkhunter --update

Le mieux est de créer une tâche CRON avec mise à jour et check :

rkhunter --update &#38;&#38; rkhunter --checkall

]]></description>
			<content:encoded><![CDATA[<p>Rkhunter est un anti rootkit pour Debian, l&#8217;installation est simple à partir des dépôts :</p>
<pre class="brush: bash;">
apt-get update
apt-get install rkhunter
</pre>
<p>Mise à jour :</p>
<pre class="brush: bash;">
rkhunter --update
</pre>
<p>Le mieux est de créer une tâche CRON avec mise à jour et check :</p>
<pre class="brush: bash;">
rkhunter --update &amp;&amp; rkhunter --checkall
</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/7bOA_LOslXg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/linux/rkhunter-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/linux/rkhunter-debian/</feedburner:origLink></item>
		<item>
		<title>Installer PEAR,PECL,ACP sur Debian</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/VtWclU6g5R0/</link>
		<comments>http://ligams.net/linux/installer-pear-pecl-acp-debian/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 13:18:10 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=105</guid>
		<description><![CDATA[Pour accéder à certaines fonctionnalités, il est parfois nécessaire d'avoir recours aux extensions PEAR et PHP, PECL et ACP sont parfois bien pratiques, notamment pour l'upload de fichiers volumineux.]]></description>
			<content:encoded><![CDATA[<p>Pour accéder à certaines fonctionnalités, il est parfois nécessaire d&#8217;avoir recours aux extensions PEAR, PECL et ACP; qui sont parfois bien pratiques, notamment pour l&#8217;<strong>upload de fichiers volumineux</strong>.</p>
<p>Mise à jour d&#8217;apt :</p>
<pre class="brush: bash;">apt-get update</pre>
<p>Installation du package PEAR :</p>
<pre class="brush: bash;">apt-get install php-pear</pre>
<p>Installation des packages nécessaires :</p>
<pre class="brush: bash;">
apt-get install apache2-dev
apt-get install php5-dev
</pre>
<p>Apxs est nommé apxs2 avec apache2, il est nécessaire de créer un lien pour que l&#8217;application compile correctement :</p>
<pre class="brush: bash;">ln -s /usr/bin/apxs2 /usr/bin/apxs</pre>
<p>Ok, maintenant on utilise l&#8217;exécutable PECL pour télécharger et installer APC :</p>
<pre class="brush: bash;">pecl install apc</pre>
<p>Pour activer l&#8217;extension, il est nécessaire de la linker dans le php.ini (généralement /etc/php5/apache2/php.ini) :</p>
<pre class="brush: bash;">extension=apc.so</pre>
<p>Pour activer tout ça, redémarrer apache :</p>
<pre class="brush: bash;">/etc/init.d/apache2 restart</pre>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/VtWclU6g5R0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/linux/installer-pear-pecl-acp-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/linux/installer-pear-pecl-acp-debian/</feedburner:origLink></item>
		<item>
		<title>Enlever category dans l’url Wordpress</title>
		<link>http://feedproxy.google.com/~r/ligams_net/~3/qpqo6gP_crY/</link>
		<comments>http://ligams.net/wordpress/enlever-category-url/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 15:20:19 +0000</pubDate>
		<dc:creator>Stéphane</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://ligams.net/?p=102</guid>
		<description><![CDATA[Ouvrir /wp-includes/category-template.php
Chercher au alentours de la ligne 35 :

$catlink = str_replace( '%category%', $category_nicename, $catlink );

Ajouter avant :

$catlink = str_replace('category/', '', $catlink);

Ouvrir le fichier .htaccess, ajouter :

RewriteRule ^category/(.+)$ /$1 [R=301,L]

C&#8217;est tout  
]]></description>
			<content:encoded><![CDATA[<p>Ouvrir /wp-includes/category-template.php</p>
<p>Chercher au alentours de la ligne 35 :</p>
<pre class="brush: php;">
$catlink = str_replace( '%category%', $category_nicename, $catlink );
</pre>
<p>Ajouter avant :</p>
<pre class="brush: php;">
$catlink = str_replace('category/', '', $catlink);
</pre>
<p>Ouvrir le fichier .htaccess, ajouter :</p>
<pre class="brush: bash;">
RewriteRule ^category/(.+)$ /$1 [R=301,L]
</pre>
<p>C&#8217;est tout <img src='http://ligams.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/ligams_net/~4/qpqo6gP_crY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://ligams.net/wordpress/enlever-category-url/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://ligams.net/wordpress/enlever-category-url/</feedburner:origLink></item>
	</channel>
</rss>
