<?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>Idea Factory &#187; Apache</title>
	<atom:link href="http://ideafactory.it/category/apache/feed" rel="self" type="application/rss+xml" />
	<link>http://ideafactory.it</link>
	<description>c&#039;e&#039; solo un modo di fare le cose: farle bene</description>
	<lastBuildDate>Thu, 01 Jul 2010 15:06:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>ServerSignature di Apache</title>
		<link>http://ideafactory.it/apache/serversignature-di-apache.html</link>
		<comments>http://ideafactory.it/apache/serversignature-di-apache.html#comments</comments>
		<pubDate>Sat, 09 Jan 2010 13:42:38 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=271</guid>
		<description><![CDATA[In un precedente articolo ho descritto come Modificare l&#8217;header di Apache, in questo articolo  vediamo come non mostrarlo affatto. Molto probabilmente richiamando una URL inesistente o non gestita dall&#8217;applicazione che risiede sul nostro server, viene fuori qualcosa del genere: In base a quanto descritto nell&#8217;articolo Modificare l&#8217;header di Apache, possiamo variare l&#8217;output che mostra le [...]]]></description>
			<content:encoded><![CDATA[<p>In un precedente articolo ho descritto come <a href="http://www.ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html" onclick="pageTracker._trackPageview('/outgoing/www.ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html?referer=');">Modificare l&#8217;header di Apache</a>, in questo articolo  vediamo come non mostrarlo affatto.</p>
<p>Molto probabilmente richiamando una URL inesistente o non gestita dall&#8217;applicazione che risiede sul nostro server, viene fuori qualcosa del genere:</p>
<p style="text-align: center;"><img class="aligncenter" title="ServerSignature" src="http://articles.slicehost.com/assets/2007/9/14/004_serversignature.png" alt="ServerSignature di Apache" width="435" height="104" /></p>
<p style="text-align: left;">In base a quanto descritto nell&#8217;articolo <a href="http://www.ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html" onclick="pageTracker._trackPageview('/outgoing/www.ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html?referer=');">Modificare l&#8217;header di Apache</a>, possiamo variare l&#8217;output che mostra le informazioni del server web.</p>
<p>Per non mostrare assolutamente niente, basta editare il file del virtualhost ad esempio <em>/etc/apache2/sites-available/default</em>, ed impostare la direttiva ServerSignature ad Off in questo modo:</p>
<p><code>ServerSignature Off</code></p>
<p>Ovviamente va restartato Apache prima di vedere attuata tale modifica.</p>
<p>Quali sono le opzioni di <em>ServerSignature</em>? Eccole:</p>
<ul>
<li><em>Off</em>: Non visualizza niente nel footer</li>
<li><em>On</em>: Visualizza le informazioni come specificato in <em>ServerTokens</em></li>
<li><em>On</em>: Visualizza le informazioni come specificato in <em>ServerTokens</em> ed aggiunge il link all&#8217;indirizzo e-mail specificato con <em>ServerAdmin</em></li>
</ul>
<p>Buon week-end a tutti.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apache/serversignature-di-apache.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>eAccelerator su Debian Etch</title>
		<link>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html</link>
		<comments>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html#comments</comments>
		<pubDate>Wed, 09 Jul 2008 09:40:45 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[eAccelerator]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/2008/07/09/eaccelerator-su-debian-etch/</guid>
		<description><![CDATA[eAccelerator è un’estensione gratuita ed open source per PHP che si occupa di effettuare un lavoro di accelerazione, ottimizzazione e di cache sui vostri script scritti per l’appunto in PHP. I benefici di usare eAccelerator sono dimostrati da infiniti benchmark presenti su Internet. Sul server dove è residente www.bucchianico.net, ospitato da Sofitek e gestito tramite [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.eaccelerator.net/" onclick="pageTracker._trackPageview('/outgoing/www.eaccelerator.net/?referer=');">eAccelerator</a> è un’estensione gratuita ed open source per PHP che si occupa di effettuare un lavoro di accelerazione, ottimizzazione e di cache sui vostri script scritti per l’appunto in PHP. I benefici di usare eAccelerator sono dimostrati da infiniti benchmark presenti su Internet.<span id="more-70"></span></p>
<p>Sul server dove è residente <a href="http://www.bucchianico.net" onclick="pageTracker._trackPageview('/outgoing/www.bucchianico.net?referer=');">www.bucchianico.net</a>, ospitato da <a href="http://www.sofitek.it" onclick="pageTracker._trackPageview('/outgoing/www.sofitek.it?referer=');">Sofitek</a> e gestito tramite <a href="http://www.sofitek.it/it/soluzioni/kubigo" onclick="pageTracker._trackPageview('/outgoing/www.sofitek.it/it/soluzioni/kubigo?referer=');">Kubigo</a>, c&#8217;è una installazione LAMP e, prima di aggiungere eAccelerator al gia possente sistema, facciamo un test con Apache Benchmark (ab):</p>
<p><code><br />
ab -n1000 http://www.bucchianico.net/<br />
</code></p>
<p>Dopo un pò avremo i risultati:</p>
<p><code><br />
Time taken for tests:   670.692849 seconds<br />
Complete requests:      1000<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      29338000 bytes<br />
HTML transferred:       29006000 bytes<br />
Requests per second:    1.49 [#/sec] (mean)<br />
Time per request:       670.693 [ms] (mean)<br />
Time per request:       670.693 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          42.72 [Kbytes/sec] received<br />
</code></p>
<p>Bene, adesso installiamo eAccelerator e vediamo cosa succede.<br />
Per poter compilare eAccelerator abbiamo bisogno di <em>php5-dev</em> e <em>build-essential</em>, quindi li installiamo:<br />
<code><br />
apt-get install build-essential php5-dev<br />
</code><br />
Scarichiamo i sorgenti di eAccelerator in <em>/usr/local/src/</em>:<br />
<code><br />
wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2<br />
</code></p>
<p>Apriamo il pacchetto compresso:<br />
<code><br />
tar xvfj eaccelerator-0.9.5.3.tar.bz2<br />
</code></p>
<p>Una volta entrati nella directory appena creata, compiliamo:<br />
<code><br />
cd eaccelerator-0.9.5.3<br />
phpize<br />
./configure<br />
make<br />
make install<br />
</code></p>
<p>Se tutto è andato a buon fine abbiamo quesi finito. Adesso non resta che creare il file <em>.ini</em> che Apache carica insieme alla configurazione di PHP5.</p>
<p>La directory dove creare il file è <em>/etc/php5/conf.d/</em>, quindi:<br />
<code><br />
vi /etc/php5/conf.d/eaccelerator.ini<br />
</code></p>
<p>Al cui interno scriviamo:<br />
<code><br />
extension="eaccelerator.so"<br />
eaccelerator.shm_size="16"<br />
eaccelerator.cache_dir="/var/cache/eaccelerator"<br />
eaccelerator.enable="1"<br />
eaccelerator.optimizer="1"<br />
eaccelerator.check_mtime="1"<br />
eaccelerator.debug="0"<br />
eaccelerator.filter=""<br />
eaccelerator.shm_max="0"<br />
eaccelerator.shm_ttl="0"<br />
eaccelerator.shm_prune_period="0"<br />
eaccelerator.shm_only="0"<br />
eaccelerator.compress="1"<br />
eaccelerator.compress_level="9"<br />
</code></p>
<p>Queste impostazioni sono tratte da <a href="http://www.eaccelerator.net/wiki/Settings" onclick="pageTracker._trackPageview('/outgoing/www.eaccelerator.net/wiki/Settings?referer=');">http://www.eaccelerator.net/wiki/Settings</a> e consiglio vivamente di visitare tale pagina per meglio configurare eAccelerator in base alle proprie esigenze.</p>
<p>Salvato il file, è necessario creare la directory specificata in <em>eaccelerator.cache_dir</em> e darle i permessi giusti:<br />
<code><br />
mkdir -p /var/cache/eaccelerator<br />
chmod 0777 /var/cache/eaccelerator<br />
</code></p>
<p>Riavviamo Apache:<br />
<code><br />
/etc/init.d/apache2 restart<br />
</code></p>
<p>Adesso se puntiamo il nostro browser sul server con eAccelerator, precisamente ad una pagina PHP che ha questo codice al suo interno:</p>
<p><code><br />
&lt;?php<br />
phpinfo();<br />
?&gt;<br />
</code></p>
<p>Se, all&#8217;interno di tale pagina, cercando &#8220;eAccelerator&#8221;, è presente la relativa sezione,  abbiamo finito!:)</p>
<p>Adesso riproviamo ad eseguire il test:<br />
<code><br />
ab -n1000 http://www.bucchianico.net/<br />
</code></p>
<p>Ecco i miei risultati:<br />
<code><br />
Time taken for tests:   576.975449 seconds<br />
Complete requests:      1000<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      29338000 bytes<br />
HTML transferred:       29006000 bytes<br />
Requests per second:    1.73 [#/sec] (mean)<br />
Time per request:       576.975 [ms] (mean)<br />
Time per request:       576.975 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          49.66 [Kbytes/sec] received<br />
</code></p>
<p>Il test è stato completato in 576 secondi rispetto ai 670 di prima e le richieste al secondo sono passate da 1.49 a 1,73: niente male, ma i benefici si hanno con un test che simula richieste concorrenti:</p>
<p><code><br />
ab -n1000 -c100 http://www.bucchianico.net/<br />
</code><br />
Ecco i risultati SENZA eAccelerator attivo:<br />
<code><br />
Concurrency Level:      100<br />
Time taken for tests:   219.25691 seconds<br />
Complete requests:      1000<br />
Failed requests:        7<br />
(Connect: 0, Length: 7, Exceptions: 0)<br />
Write errors:           0<br />
Non-2xx responses:      7<br />
Total transferred:      29137982 bytes<br />
HTML transferred:       28805562 bytes<br />
Requests per second:    4.57 [#/sec] (mean)<br />
Time per request:       21902.570 [ms] (mean)<br />
Time per request:       219.026 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          129.92 [Kbytes/sec] received<br />
</code><br />
Invece con eAccelerator:<br />
<code><br />
Concurrency Level:      100<br />
Time taken for tests:   134.254046 seconds<br />
Complete requests:      1000<br />
Failed requests:        7<br />
(Connect: 0, Length: 7, Exceptions: 0)<br />
Write errors:           0<br />
Non-2xx responses:      7<br />
Total transferred:      29150942 bytes<br />
HTML transferred:       28818190 bytes<br />
Requests per second:    7.45 [#/sec] (mean)<br />
Time per request:       13425.404 [ms] (mean)<br />
Time per request:       134.254 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          212.04 [Kbytes/sec] received<br />
</code><br />
Beh penso che si commentino da soli&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>apache2-ssl-certificate mi manchi&#8230;</title>
		<link>http://ideafactory.it/apache/apache2-ssl-certificate-mi-manchi.html</link>
		<comments>http://ideafactory.it/apache/apache2-ssl-certificate-mi-manchi.html#comments</comments>
		<pubDate>Wed, 27 Jun 2007 21:32:51 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=17</guid>
		<description><![CDATA[Purtroppo in Etch il praticissimo comando apache2-ssl-certificate è scomparso ma ciò non ci impedisce di creare il nostro bel certificato per Apache con openssl, infatti con questa lunghissima istruzione: openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem otterremo lo stesso risultato del defunto apache2-ssl-certificate. Adesso serve editare il file ports.conf per [...]]]></description>
			<content:encoded><![CDATA[<p>Purtroppo in Etch il praticissimo comando <em>apache2-ssl-certificate</em> è scomparso ma ciò non ci impedisce di creare il nostro bel certificato per Apache con openssl, infatti con questa lunghissima istruzione:</p>
<p><code>openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem</code></p>
<p>otterremo lo stesso risultato del defunto <em>apache2-ssl-certificate</em>.</p>
<p>Adesso serve editare il file ports.conf per dire al demone di mettersi in ascolto anche sulla porta 443 e creare un file di configurazione per l&#8217;host in https che contiene, oltre alle normali direttive, anche:</p>
<p><code> SSLEngine on<br />
SSLCertificateFile /etc/apache2/apache.pem</code></p>
<p>Basta abilitare con il vhost tramite l&#8217;ancor presente <em>a2ensite</em> ed ecco pronto il nostro https.</p>
<p>Qualcuno sa perché <em>apache2-ssl-certificate </em>è stato deprecato? Chiederò a quelli di &#8220;<em>Chi l&#8217;ha visto?</em>&#8220;.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apache/apache2-ssl-certificate-mi-manchi.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modificare l&#8217;header di Apache</title>
		<link>http://ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html</link>
		<comments>http://ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html#comments</comments>
		<pubDate>Wed, 13 Jun 2007 11:03:18 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[header]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=8</guid>
		<description><![CDATA[In una normale richiesta web il server restituisce le informazioni riguardanti se stesso e sul sistema su cui è in esecuzione tramite la direttiva ServerTokens presente nell&#8217;header di risposta. Questa informazione è ancor più visibile se si richiedono URL errati ed il server risponde con qualcosa del tipo: Not Found The requested URL /jkdnksdj/index.php was [...]]]></description>
			<content:encoded><![CDATA[<p>In una normale richiesta web il server restituisce le informazioni riguardanti se stesso e sul sistema su cui è in esecuzione tramite la direttiva <em>ServerTokens</em> presente nell&#8217;header di risposta.</p>
<p>Questa informazione è ancor più visibile se si richiedono URL errati ed il server risponde con qualcosa del tipo:</p>
<blockquote>
<h1>Not Found</h1>
<p>The requested URL /jkdnksdj/index.php was not found on this server.</p>
<hr />
<address>Apache/2.2.3 (Debian) PHP/5.2.0-8+etch4 Server at www.ideafactory.it Port 80</address>
</blockquote>
<p>La stringa riporta la versione del server in uso, il sistema operativo, l&#8217;abilitazione di PHP ed altri dati un pò meno importanti.</p>
<p>Per non espletare troppo la propria configurazione è bene impostare la variabile <em>ServerTokens</em> presente nel file di configurazione di Apache.</p>
<p><span id="more-6"></span>Nel caso di Debian, il file da modificare è<br />
<code> /etc/apache2/apache2.conf</code><br />
al cui interno è presente:<br />
<code>ServerTokens Full</code><br />
Di seguito sono riportati i possibili valori che la direttiva può assumere e l&#8217;header che viene generato:</p>
<ul>
<li><em> Full</em>: riporta tutte le informazioni presenti nell&#8217;esempio visto poc&#8217;anzi</li>
<li><em>OS</em>: Apache/2.2.3 (Debian) Server</li>
<li><em>Minor</em>: Apache/2.2 Server</li>
<li><em>Minimal</em>: Apache/2.2.3</li>
<li><em>Major</em>: Apache/2 Server</li>
<li><em>Prod</em>: Apache Server</li>
</ul>
<p>A voi la scelta.</p>
<p>p.s: ricordatevi di riavviare Apache!:)</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apache/modificare-le-informazioni-dellheader-di-apache.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
