<?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>Focus the Web Tech Blog &#187; Giovanni Cappellotto</title>
	<atom:link href="http://tech.focustheweb.com/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://tech.focustheweb.com</link>
	<description>Programmazione, web, internet, howtos, etc.</description>
	<lastBuildDate>Sat, 24 Apr 2010 09:16:53 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Installare Drupal 6 su hosting Aruba</title>
		<link>http://tech.focustheweb.com/information-technology/installare-drupal-6-su-hosting-aruba/</link>
		<comments>http://tech.focustheweb.com/information-technology/installare-drupal-6-su-hosting-aruba/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 09:15:29 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[aruba]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[configurazione]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[installazione]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=348</guid>
		<description><![CDATA[Aruba è un servizio di hosting molto diffuso, offre ad un prezzo modico una piattaforma che può essere utilizzata per ospitare siti costruiti con sistemi di gestione dei contenuti come Drupal.








Purtroppo però manca nelle guide una sezione dedicata all&#8217;installazione di Drupal ed ecco quindi questo post che può essere utile a tutti quelli che, come [...]]]></description>
			<content:encoded><![CDATA[<p>Aruba è un servizio di <strong>hosting</strong> molto diffuso, offre ad un prezzo modico una piattaforma che può essere utilizzata per ospitare siti costruiti con <strong>sistemi di gestione dei contenuti come Drupal</strong>.</p>
<p>
<!-- Begin Google Adsense code -->
<script type="text/javascript"><!--
google_ad_client = "pub-7194529311513014";
/* 468x60, creato 21/11/09 */
google_ad_slot = "8123373738";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<!-- End Google Adsense code -->
</p>
<p>Purtroppo però manca nelle guide una sezione dedicata all&#8217;<strong>installazione di Drupal</strong> ed ecco quindi questo post che può essere utile a tutti quelli che, come me, si sono dovuti o si dovranno <em>scontrare</em> con questa operazione.</p>
<p>Premetto che io sono abituato a lavorare in <em>locale</em> per poi caricare il lavoro finito sul <em>server di produzione</em>, o su un server per fare <em>beta testing</em> che poi verrà clonato per diventare il server in produzione.<br />
Questa ricetta funziona correttamente anche nel caso voleste caricare una copia intonsa di Drupal direttamente sul server per poi lavorarvi solo online.</p>
<ol>
<li><strong>Upload del sito o di una nuova copia di Drupal 6 via <em>FTP</em></strong> nello spazio di hosting</li>
<li><strong>Modifica il contenuto del file <em><code>.htaccess</code></em></strong> usato per fare l&#8217;overriding delle impostazioni del server HTTP<br />
Alcune dichiarazioni non sono permesse da Aruba e andranno commentate, nello specifico commentare:</p>

<div class="wp_syntax"><div class="code"><pre class="apacheconf" style="font-family:monospace;"># Options -Indexes
# Options +FollowSymLinks
# DirectoryIndex index.php</pre></div></div>

</li>
<li><strong>Modifica le impostazioni standard di connessione al <em>database server</em></strong> (Aruba offre come scelta predefinita MySQL) modificando il file <code>sites/default/settings.php</code> con le informazioni di accesso fornite da Aruba: indirizzo IP del server, nome utente, password e nome del database<br />
- oppure -<br />
<strong>Cambia i permessi del file <code>sites/default/settings.php</code> aggiungendo il <em>permesso di scrittura</em></strong> (questo passo ci permette di utilizzare il processo di installazione standard di Drupal che modificherà il file <code>settings.php</code> in base alle informazioni fornite durante il processo)</li>
<li><strong>Modifica la configurazione di PHP</strong> tramite il pannello di gestione delle impostazioni PHP;
<ul>
<li>accedi alla al sito di amministrazione dell&#8217;hosting (http://admin.<em>nomedeltuodominio.it</em>)</li>
<li>selezionare &#8220;Pannello di gestione hosting linux&#8221;<br />
<img class="alignnone size-full wp-image-353" title="Picture 6" src="http://tech.focustheweb.com/wp-content/uploads/2010/04/Picture-6.png" alt="Picture 6" width="579" height="56" /></li>
<li>seleziona la tab &#8220;Tools and settings&#8221;</li>
<li>seleziona &#8220;PHP.ini file customization&#8221;<br />
<img class="alignnone size-full wp-image-349" title="Picture 3" src="http://tech.focustheweb.com/wp-content/uploads/2010/04/Picture-3.png" alt="Picture 3" width="341" height="105" /></li>
<li>scegli nell&#8217;elenco la <em>versione ottimizzata per hosting Drupal</em></li>
</ul>
</li>
<li><strong>Ripristina i permessi originali a tutti i files</strong> utilizzando la utility fornita da Aruba<br />
La utility si trova nella stessa sezione &#8220;Tools and settings&#8221; utilizzata per cambiare le impostazioni di PHP<br />
<img class="alignnone size-full wp-image-351" title="Picture 4" src="http://tech.focustheweb.com/wp-content/uploads/2010/04/Picture-4.png" alt="Picture 4" width="337" height="100" /><br />
<strong>Nota:</strong> questo passo è <strong>fondamentale</strong> per una corretta installazione di Drupal</li>
<li>Accedi al sito (http://www.<em>nomedeltuodominio.it</em>) e <strong>utilizza il processo di installazione standard fornito da Drupal</strong> per completare il processo<strong><br />
</strong></li>
</ol>
<p><strong>Attenzione:</strong><br />
Drupal crea in automatico un <strong>file <code>.htaccess</code> nella cartella <code>sites/default/files</code></strong> che non permette la visualizzazione di immagini caricate dagli utenti, <strong>per correggere questo errore bisogna commentare tutte le righe che si trovano nel file</strong>; cancellarlo non risolve il problema perchè Drupal cerca di automatico di crearne uno nuovo.</p>
<p>Una piccola <em>riflessione personale</em> sul servizio fornito da Aruba: scelta sufficiente per i neofiti, ma lavorare su un server senza accesso ad una shell remota e a tutta la configurazione del sistema è molto limitante, inoltre come si può pubblicizzare un servizio di hosting con <em>spazio illimitato</em>?<br />
Sono dei maghi!</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/information-technology/installare-drupal-6-su-hosting-aruba/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Due plugins Wordpress per ottimizzare il blog (SEO)</title>
		<link>http://tech.focustheweb.com/wordpress/due-plugins-wordpress-per-ottimizzare-il-blog-seo/</link>
		<comments>http://tech.focustheweb.com/wordpress/due-plugins-wordpress-per-ottimizzare-il-blog-seo/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 18:17:10 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[sitemap]]></category>
		<category><![CDATA[yahoo]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=343</guid>
		<description><![CDATA[
Semplici ed efficaci, ecco due plugin standard di un installazione Wordpress:

Google (XML) Sitemaps Generator for WordPress
Questo plugin genera una mappa del blog in formato XML conforme alle specifiche XML-sitemap. Il formato è supportato dai maggiori motori di ricerca (Google, Ask.com, Yahoo) ed aiuta i crawler a visitare ed indicizzare ogni risorsa del blog.
Google Analytics for [...]]]></description>
			<content:encoded><![CDATA[<p></p>
<p>Semplici ed efficaci, ecco due plugin <em>standard </em>di un installazione Wordpress:</p>
<ol>
<li><strong>Google (XML) Sitemaps Generator for WordPress</strong><br />
Questo plugin genera una <em>mappa del blog in formato XML</em> conforme alle specifiche <a title="http://www.sitemaps.org/" href="http://www.sitemaps.org/">XML-sitemap</a>. Il formato è supportato dai maggiori motori di ricerca (Google, Ask.com, Yahoo) ed aiuta i <em>crawler</em> a visitare ed <em>indicizzare</em> ogni risorsa del blog.</li>
<li><strong>Google Analytics for WordPress</strong><br />
Google <em>Analytics</em> è uno strumento per monitorare le <em>statistiche di accesso</em> sul web. Il plugin inserisce in ogni pagina del blog il codice necessario ad Analytics per raccogliere informazioni sui visitatori.</li>
</ol>
<p>Altre idee? Commentate.</p>
<p>Maggiori informazioni (download plugins):</p>
<ol>
<li>Google (XML) Sitemaps Generator for WordPress &#8211; <a href="http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator/">http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator/</a></li>
<li>Google Analytics for WordPress &#8211; <a href="http://yoast.com/wordpress/google-analytics/">http://yoast.com/wordpress/google-analytics/</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/wordpress/due-plugins-wordpress-per-ottimizzare-il-blog-seo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tre add-ons Firefox fondamentali per fare sviluppo web</title>
		<link>http://tech.focustheweb.com/information-technology/tre-add-ons-firefox-fondamentali-per-fare-sviluppo-web/</link>
		<comments>http://tech.focustheweb.com/information-technology/tre-add-ons-firefox-fondamentali-per-fare-sviluppo-web/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 16:26:59 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[add-on]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[http header]]></category>
		<category><![CDATA[live http headers]]></category>
		<category><![CDATA[sviluppo]]></category>
		<category><![CDATA[switcher]]></category>
		<category><![CDATA[user-agent]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=340</guid>
		<description><![CDATA[
E&#8217; importante per uno sviluppatore web dotarsi di strumenti in grado di facilitare il lavoro di ogni giorno: dall&#8217;editor, al linguaggio di programmazione, fino ad arrivare al browser.
Parlando di browser, nella fase di sviluppo, ho sempre preferito Firefox: un programma stabile e veloce che aiuta lo sviluppatore anche attraverso le sue svariate estensioni, chiamate add-ons.
Tra [...]]]></description>
			<content:encoded><![CDATA[<p><br />
E&#8217; importante per uno sviluppatore web dotarsi di strumenti in grado di facilitare il lavoro di ogni giorno: dall&#8217;editor, al linguaggio di programmazione, fino ad arrivare al <strong>browser</strong>.</p>
<p>Parlando di browser, nella fase di sviluppo, ho sempre preferito <strong>Firefox</strong>: un programma stabile e veloce che aiuta lo sviluppatore anche attraverso le sue svariate estensioni, chiamate <strong>add-ons</strong>.</p>
<p>Tra tutti gli add-ons ce ne sono <em>tre</em> di cui non potrei fare a meno:</p>
<ol>
<li><strong>Firebug</strong><br />
E&#8217; di sicuro <em>il più popolare strumento di sviluppo per Firefox</em>.<br />
Permette di ispezionare e modificare la struttura HTML e gli stili CSS in modo interattivo (real-time), introduce un debugger e una console javascript, analizza le performances di uso della rete e molto altro.</li>
<li><strong>Live HTTP Headers<br />
</strong>Permette di visualizzare gli headers delle richieste e delle risposte in partenza e in arrivo al browser, utilissimo per fare debugging.<br />
<strong></strong></li>
<li><strong>User Agent Switcher<br />
</strong>Questa estensione aggiunge una voce di menù per cambiare il valore del campo &#8220;User-Agent&#8221; mandato nell&#8217;header dal browser al server. In questo modo possiamo mascherare l&#8217;identità di Firefox con quella di un altro browser; molto utile per sviluppare applicazioni web per cellulari da Firefox.</li>
</ol>
<p>Se secondo voi ne manca qualcuno <strong>non esitate a lasciarmi un commento!</strong></p>
<p>Per maggiori informazioni:</p>
<ol>
<li>Firebug &#8211; <a title="Firebug" href="http://getfirebug.com/">http://getfirebug.com/</a></li>
<li>Live HTTP Headers &#8211; <a title="Live HTTP Headers" href="http://livehttpheaders.mozdev.org/">http://livehttpheaders.mozdev.org/</a></li>
<li>User Agent Switcher &#8211; <a title="User Agent Switcher" href="http://chrispederick.com/work/user-agent-switcher/">http://chrispederick.com/work/user-agent-switcher/</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/information-technology/tre-add-ons-firefox-fondamentali-per-fare-sviluppo-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails, configurazione base di ActionMailer</title>
		<link>http://tech.focustheweb.com/programmazione/ruby-programmazione/rails-configurazione-base-di-actionmailer/</link>
		<comments>http://tech.focustheweb.com/programmazione/ruby-programmazione/rails-configurazione-base-di-actionmailer/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 10:08:39 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[actionmailer]]></category>
		<category><![CDATA[configurazione]]></category>
		<category><![CDATA[mailer]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[smtp]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=333</guid>
		<description><![CDATA[
Mandare email con rails è semplice grazie al modulo ActionMailer.
Una configurazione base del modulo da inserire nel file config/environments/production.rb per mandare mail in ambiente di produzione è:

config.action_mailer.smtp_settings = &#123;
  :address =&#62; &#34;domain.of.smtp.host.net&#34;,
  :port =&#62; 25,
  :domain =&#62; &#34;domain.of.sender.net&#34;,
  :user_name =&#62; &#34;user&#34;,
  :password =&#62; &#34;password&#34;,
  :authentication =&#62; :login,
  :enable_starttls_auto [...]]]></description>
			<content:encoded><![CDATA[<p><br />
Mandare email con rails è semplice grazie al modulo <strong>ActionMailer</strong>.</p>
<p>Una <strong>configurazione base</strong> del modulo da inserire nel file <code>config/environments/production.rb</code> per mandare mail in ambiente di produzione è:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">config.<span style="color:#9900CC;">action_mailer</span>.<span style="color:#9900CC;">smtp_settings</span> = <span style="color:#006600; font-weight:bold;">&#123;</span>
  <span style="color:#ff3333; font-weight:bold;">:address</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;domain.of.smtp.host.net&quot;</span>,
  <span style="color:#ff3333; font-weight:bold;">:port</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006666;">25</span>,
  <span style="color:#ff3333; font-weight:bold;">:domain</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;domain.of.sender.net&quot;</span>,
  <span style="color:#ff3333; font-weight:bold;">:user_name</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;user&quot;</span>,
  <span style="color:#ff3333; font-weight:bold;">:password</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;password&quot;</span>,
  <span style="color:#ff3333; font-weight:bold;">:authentication</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#ff3333; font-weight:bold;">:login</span>,
  <span style="color:#ff3333; font-weight:bold;">:enable_starttls_auto</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">false</span>
<span style="color:#006600; font-weight:bold;">&#125;</span></pre></div></div>

<p>dove:</p>
<dl>
<dt><code>:address =&gt;</code>, <code>:port =&gt;</code>
<dt/>
<dd>determinano l&#8217;indirizzo e la porta del server SMTP utilizzato per inviare le emails (di default impostati a <code>localhost</code> e 25)</dd>
<dt><code>:domain =&gt;</code>
<dt/>
<dd>il dominio utilizzato dal mailer per identificarsi al server SMTP. Normalmente viene usato il <em>top-level domain name</em> della macchina che manda le email, ma dipende anche dalla configurazione del server SMTP</dd>
<dt><code>:authentication =&gt;</code>
<dt/>
<dd>il valore può essere: <code>:plain</code>, <code>:login</code> o <code>:cram_md5</code>. Per scegliere il giusto valore da assegnare alla configurazione bisogna conoscere le impostazioni del server SMTP. Il parametro può essere omesso per server SMTP che non necessitano autenticazione (nel qual caso saranno inutili anche i parametri <code>:user_name</code> e <code>:password</code>)</dd>
<dt><code>:user_name =&gt;</code>, <code>:password =&gt;</code>
<dt/>
<dd>nome utente e password di autenticazione al server SMTP</dd>
<dt><code>:enable_starttls_auto =&gt;</code>
<dt/>
<dd>dalla versione 2.3 di rails ActionMailer cerca di stabilire in modo automatico una connessione al server attraverso il protocollo <em>tls</em> (Transport Layer Security), questo parametro ci permette di modificare il comportamento di default di ActionMailer (<a href="https://rails.lighthouseapp.com/projects/8994/tickets/1731-make-enable_starttls_auto-opt-in-in-actionmailer">https://rails.lighthouseapp.com/projects/8994/tickets/1731-make-enable_starttls_auto-opt-in-in-actionmailer</a>)</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/programmazione/ruby-programmazione/rails-configurazione-base-di-actionmailer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generatore di immagini</title>
		<link>http://tech.focustheweb.com/information-technology/generatore-di-immagini/</link>
		<comments>http://tech.focustheweb.com/information-technology/generatore-di-immagini/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 13:28:17 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[generatore]]></category>
		<category><![CDATA[immagine]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=330</guid>
		<description><![CDATA[
Non è il massimo della creatività, ma può essere utile per prove o test: http://dummyimage.com/
Per usare il servizio basta scrivere subito dopo il dominio le dimensioni dell&#8217;immagine che vogliamo generare nella forma:
&#60;larghezza&#62;x&#60;altezza&#62;.&#60;formato&#62;
dove &#60;larghezza&#62; e &#60;altezza&#62; sono composti da caratteri numerici e &#60;formato&#62; (opzionale) è un formato di immagine compatibile per il web (gif, jpg, png, [...]]]></description>
			<content:encoded><![CDATA[<p><br />
Non è il massimo della creatività, ma può essere utile per prove o test: <a title="DummyImage" href="http://dummyimage.com/">http://dummyimage.com/</a></p>
<p>Per usare il servizio basta scrivere subito dopo il dominio le dimensioni dell&#8217;immagine che vogliamo generare nella forma:</p>
<p><em>&lt;larghezza&gt;x&lt;altezza&gt;.&lt;formato&gt;</em></p>
<p>dove <em>&lt;larghezza&gt;</em> e <em>&lt;altezza&gt;</em> sono composti da caratteri numerici e <em>&lt;formato&gt;</em> (opzionale) è un formato di immagine compatibile per il web (gif, jpg, png, ecc.).</p>
<p>Esempio:<br />
<a title="Esempio immagine 640x480 formato PNG" href="http://dummyimage.com/640x480.png">http://dummyimage.com/640&#215;480.png</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/information-technology/generatore-di-immagini/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Risolvere un nome host da un indirizzo IP in Ruby</title>
		<link>http://tech.focustheweb.com/programmazione/ruby-programmazione/risolvere-un-nome-host-da-un-indirizzo-ip-in-ruby/</link>
		<comments>http://tech.focustheweb.com/programmazione/ruby-programmazione/risolvere-un-nome-host-da-un-indirizzo-ip-in-ruby/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 16:19:25 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[host]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=327</guid>
		<description><![CDATA[
Ecco un altro promemoria: come risolvere un nome host da un indirizzo IP in Ruby.
Per eseguire l&#8217;operazione viene in nostro aiuto la class Resolv.
Esempio (usando Rails):

hostname = Resolv.new.getname&#40;request.env&#91;'REMOTE_ADDR'&#93;&#41;

Risorse utili:
 http://ruby-doc.org/stdlib/libdoc/resolv/rdoc/index.html
]]></description>
			<content:encoded><![CDATA[<p><br />
Ecco un altro promemoria: come <em>risolvere un nome host da un indirizzo IP</em> in Ruby.</p>
<p>Per eseguire l&#8217;operazione viene in nostro aiuto la class <code><strong>Resolv</strong></code>.</p>
<p>Esempio (usando Rails):</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">hostname = Resolv.<span style="color:#9900CC;">new</span>.<span style="color:#9900CC;">getname</span><span style="color:#006600; font-weight:bold;">&#40;</span>request.<span style="color:#9900CC;">env</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'REMOTE_ADDR'</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>Risorse utili:<br />
<a title="Resolv class documentation" href="http://ruby-doc.org/stdlib/libdoc/resolv/rdoc/index.html"> http://ruby-doc.org/stdlib/libdoc/resolv/rdoc/index.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/programmazione/ruby-programmazione/risolvere-un-nome-host-da-un-indirizzo-ip-in-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>URL escaping in Ruby con CGI::escape</title>
		<link>http://tech.focustheweb.com/programmazione/ruby-programmazione/url-escaping-in-ruby-con-cgiescape/</link>
		<comments>http://tech.focustheweb.com/programmazione/ruby-programmazione/url-escaping-in-ruby-con-cgiescape/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 10:49:04 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[cgi]]></category>
		<category><![CDATA[escape]]></category>
		<category><![CDATA[rtf]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=322</guid>
		<description><![CDATA[
E&#8217; da un po&#8217; che non scrivo ed ecco un piccolo aggiornamento.
Parliamo di URLs e dei caratteri ammessi in questo tipo di oggetti. Il documento RFC 1738 del &#8216;94 prevede solo alcuni caratteri per l&#8217;identificazione di URLs:
only alphanumerics, the special characters &#8220;$-_.+!*&#8217;(),&#8221;, and reserved characters used for their reserved purposes may be used unencoded within [...]]]></description>
			<content:encoded><![CDATA[<p><br />
E&#8217; da un po&#8217; che non scrivo ed ecco un piccolo aggiornamento.</p>
<p>Parliamo di URLs e dei caratteri ammessi in questo tipo di oggetti. Il documento <a title="RFC 1738" href="http://www.rfc-editor.org/rfc/rfc1738.txt">RFC 1738</a> del &#8216;94 prevede solo alcuni caratteri per l&#8217;identificazione di URLs:</p>
<blockquote><p>only alphanumerics, the special characters &#8220;$-_.+!*&#8217;(),&#8221;, and reserved characters used for their reserved purposes may be used unencoded within a URL.</p></blockquote>
<p>Per eseguire questa operazione di <em>escaping</em> Ruby offre una semplice funzione di libreria:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC00FF; font-weight:bold;">CGI</span>::escape</pre></div></div>

<p>Esempio:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">url_encoded_string = <span style="color:#CC00FF; font-weight:bold;">CGI</span>::escape<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;'Stop!' said Fred&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
     <span style="color:#008000; font-style:italic;"># =&gt; &quot;%27Stop%21%27+said+Fred&quot;</span></pre></div></div>

<p>Per maggiori informazioni:<br />
<a title="CGI::escape" href="http://ruby-doc.org/core/classes/CGI.html#M000532"> http://ruby-doc.org/core/classes/CGI.html#M000532</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/programmazione/ruby-programmazione/url-escaping-in-ruby-con-cgiescape/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Alimentatore MacBook Pro su MacBook e viceversa&#8230; funziona!</title>
		<link>http://tech.focustheweb.com/uncategorized/alimentatore-macbook-pro-su-macbook-e-viceversa-funziona/</link>
		<comments>http://tech.focustheweb.com/uncategorized/alimentatore-macbook-pro-su-macbook-e-viceversa-funziona/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 00:03:09 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=310</guid>
		<description><![CDATA[Ok, l&#8217;ho provato e sembra funzionare&#8230; l&#8217;alimentatore del MacBook carica anche la batteria del MacBook Pro! Yo!
Cosa si dice in giro:

Using MacBook Power Adapter on MacBook Pro
Macbook pro charger vs macbook charger

Ma ecco cosa dice Apple:
Important: Use only the power adapter that came with your MacBook Pro computer. Adapters for other electronic devices (including other [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, l&#8217;ho provato e sembra funzionare&#8230; l&#8217;alimentatore del MacBook carica anche la batteria del MacBook Pro! Yo!</p>
<p>Cosa si dice in giro:</p>
<ol>
<li><a href="http://forums.macrumors.com/showthread.php?t=349328">Using MacBook Power Adapter on MacBook Pro</a></li>
<li><a href="http://www.philmug.ph/forum/showthread.php?t=14032">Macbook pro charger vs macbook charger</a></li>
</ol>
<p>Ma ecco cosa dice Apple:</p>
<blockquote><p><strong>Important:</strong> Use only the power adapter that came with your MacBook Pro computer. Adapters for other electronic devices (including other portable computers) may look similar, but they may affect your computer’s performance or damage it. For best results, always use the power adapter and connect it to a grounded power outlet when one is available. When the adapter is connected properly, you will see an indicator light on the end of the cable that connects to your MacBook Pro.</p></blockquote>
<p>Più informazioni qui:</p>
<ul>
<li><a href="http://www.apple.com/support/macbookpro/care/">MacBook Pro: Care, Use, and Safety Information</a></li>
<li><a href="http://www.apple.com/support/macbook/care/">MacBook: Care, Use, and Safety Information</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/uncategorized/alimentatore-macbook-pro-su-macbook-e-viceversa-funziona/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Waveform, mp3 to png</title>
		<link>http://tech.focustheweb.com/programmazione/ruby-programmazione/waveform-mp3-to-png/</link>
		<comments>http://tech.focustheweb.com/programmazione/ruby-programmazione/waveform-mp3-to-png/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 15:01:19 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[mp3]]></category>
		<category><![CDATA[png]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rmagick]]></category>
		<category><![CDATA[sox]]></category>
		<category><![CDATA[waveform]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=307</guid>
		<description><![CDATA[
Waveform è una piccola applicazione rails per visualizzare la forma d&#8217;onda (waveform) di un file audio in formato mp3.
Si accede all&#8217;indirizzo http://waveform.focustheweb.com.
Come usare l&#8217;applicazione:

selezionare il file mp3 dall&#8217;hd
premere il pulsante &#8220;Create&#8221;

dopo pochi secondi, nella lista degli ultimi dieci uploads, comparirà una nuova riga in corrispondenza del file appena caricato con una piccola anteprima della forma [...]]]></description>
			<content:encoded><![CDATA[<p><br />
<strong>Waveform</strong> è una piccola <strong>applicazione rails</strong> per visualizzare la <em>forma d&#8217;onda</em> (waveform) di un file audio in formato <strong>mp3</strong>.</p>
<p>Si accede all&#8217;indirizzo <a title="Waveform" href="http://waveform.focustheweb.com">http://waveform.focustheweb.com</a>.</p>
<p>Come usare l&#8217;applicazione:</p>
<ol>
<li>selezionare il file mp3 dall&#8217;hd</li>
<li>premere il pulsante &#8220;Create&#8221;</li>
</ol>
<p>dopo pochi secondi, nella lista degli ultimi dieci uploads, comparirà una nuova riga in corrispondenza del file appena caricato con una piccola anteprima della forma d&#8217;onda.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/programmazione/ruby-programmazione/waveform-mp3-to-png/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Phusion Passenger Rails deployment (mod_rails server HTTP Apache 2)</title>
		<link>http://tech.focustheweb.com/programmazione/ruby-programmazione/phusion-passenger-rails-deployment/</link>
		<comments>http://tech.focustheweb.com/programmazione/ruby-programmazione/phusion-passenger-rails-deployment/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 17:15:48 +0000</pubDate>
		<dc:creator>Giovanni Cappellotto</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[passenger]]></category>
		<category><![CDATA[ruby on rails]]></category>

		<guid isPermaLink="false">http://tech.focustheweb.com/?p=294</guid>
		<description><![CDATA[
Phusion Passenger (o mod_rails) è un modulo per server Apache2 o nginx usato per il deployment di applicazioni Ruby, incluse quelle basate sul framework Rails.
L&#8217;installazione è semplice:

installiamo la gemma corrispondente

gem install passenger


eseguiamo il comando

passenger-install-apache2-module

per installare il modulo per server Apache 2 oppure

passenger-install-nginx-module

per installare il modulo per server nginx

Ok, Passenger installato!
Possiamo aggiungere la riga PassengerDefaultUser myuser [...]]]></description>
			<content:encoded><![CDATA[<p><br />
<img class="size-full wp-image-298 alignleft" title="passenger" src="http://tech.focustheweb.com/wp-content/uploads/2009/12/passenger.png" alt="passenger" width="199" height="64" /><strong>Phusion Passenger</strong> (o <code>mod_rails</code>) è un modulo per server Apache2 o nginx usato per il <em>deployment</em> di applicazioni <strong>Ruby</strong>, incluse quelle basate sul framework <strong>Rails</strong>.</p>
<p>L&#8217;installazione è semplice:</p>
<ol>
<li>installiamo la gemma corrispondente

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> passenger</pre></div></div>

</li>
<li>eseguiamo il comando

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">passenger-install-apache2-module</pre></div></div>

<p>per installare il modulo per <strong>server Apache 2</strong> oppure</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">passenger-install-nginx-module</pre></div></div>

<p>per installare il modulo per <strong>server nginx</strong></li>
</ol>
<p><span id="more-294"></span>Ok, Passenger installato!<br />
Possiamo aggiungere la riga <code>PassengerDefaultUser myuser</code> al file di configurazione del modulo che si trova nella directory <code>/etc/apache/mods-available/passenger.load</code> per impostare come utente di default di Passenger lo stesso che usiamo per &#8220;fare i <em>deployments</em>&#8221; (nel nostro caso <code>myuser</code>).</p>
<p>Per creare una nuova applicazione Rails lanciamo il comando</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rails myapp</pre></div></div>

<p>Questo comando crea una cartella <code>myapp</code>, all&#8217;interno della cartella corrente, contenente i files dell&#8217;applicazione.</p>
<p>Aggiungiamo il file di configurazione del virtual host per la nostra applicazione rails all&#8217;interno della cartella <code>/etc/apache2/sites-available</code></p>

<div class="wp_syntax"><div class="code"><pre class="apacheconf" style="font-family:monospace;">#
# myapp.com
#
&lt;VirtualHost *:80&gt;
  ServerName myapp.com
  DocumentRoot /var/vhosts/myapp.com/public
&nbsp;
  RailsEnv development
&nbsp;
  &lt;Directory /var/vhosts/myapp.com/public&gt;
    Order allow,deny
    Allow from all
  &lt;/Directory&gt;
&lt;/VirtualHost&gt;</pre></div></div>

<p>Nella configurazione commentate la direttiva <code>RailsEnv development</code> per usare come impostazione di default l&#8217;ambiente di produzione.</p>
<p>Attiviamo il virtual host appena creato</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> a2ensite myapp.com</pre></div></div>

<p>Riavviamo il server HTTP</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>apache2 restart</pre></div></div>

<p>Aggiungiamo il nome myapp.com al file <code>/etc/hosts</code></p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;127.0.0.1 myapp.com&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>hosts</pre></div></div>

<p>Ora possiamo visitare la pagina index di default di un&#8217;applicazione rails all&#8217;indirizzo http://myapp.com.</p>
<p>Per maggiori informazioni su Phusion Passenger ecco l&#8217;<a title="Phusion Passenger" href="http://www.modrails.com/index.html">home page del progetto</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.focustheweb.com/programmazione/ruby-programmazione/phusion-passenger-rails-deployment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
