<?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>Adobe User Group Granada</title>
	<atom:link href="http://www.adobe-user-group-granada.es/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.adobe-user-group-granada.es</link>
	<description>Grupo de usuarios de Adobe orientado a Dreamweaver y Spry en la ciudad de Granada</description>
	<lastBuildDate>Thu, 17 May 2012 06:40:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>El mal de .htaccess y los ini_set() de PHP</title>
		<link>http://www.adobe-user-group-granada.es/el-mal-de-htaccess-y-los-ini_set-de-php/</link>
		<comments>http://www.adobe-user-group-granada.es/el-mal-de-htaccess-y-los-ini_set-de-php/#comments</comments>
		<pubDate>Thu, 17 May 2012 06:40:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1044</guid>
		<description><![CDATA[La posibilidad de cambiar características de PHP o de Apache según si la petición accede a un cierto directorio leyendo un cierto .htaccess o bien ejecuta un cierto script PHP que hace un ini_set() es, sin duda, útil en muchas ocasiones. El problema viene del mal uso de dichas características.
Recientemente me he encontrado con la [...]]]></description>
			<content:encoded><![CDATA[<p>La posibilidad de <strong>cambiar características de PHP o de Apache</strong> según si la petición accede a un cierto directorio leyendo un cierto <strong>.htaccess</strong> o bien ejecuta un cierto script PHP que hace un <strong>ini_set()</strong> es, sin duda, <strong>útil en muchas ocasiones</strong>. El problema viene del mal uso de dichas características.</p>
<p>Recientemente me he encontrado con la siguiente <strong>burrada <em>dentro</em> del DocumentRoot</strong> de una aplicación web:</p>
<p><span id="more-1044"></span></p>
<pre># ls -lah
total 112G
drwxrwxr-x  2 luser luser 4.0K Jul 19  2010 .
drwxrwxr-x 10 luser luser 4.0K Jul 19  2010 ..
lrwxrwxrwx  1 luser luser   11 Jul 19  2010 log -&gt; ../data/log
-rwxrwxr-x  1 luser luser <strong>111G</strong> May 16 16:59 php.log</pre>
<p>Evidentemente, dentro del código existía lo siguiente:</p>
<pre>ini_set('error_reporting', E_ALL);
ini_set("error_log",PATH_ROOT."log/php.log");</pre>
<p>Y no es que el código estuviera especialmente depurado para que no  aparecieran errores, sino que el log se parecía más bien a esto  (parcialmente debido al <strong>E_ALL</strong>)</p>
<p>Una vez vista dicha burrada, sólo que busquemos la cadena <strong>ini_set</strong> en los ficheros <strong>php</strong> es fácil encontrar burradas similares:</p>
<pre># find . -iname \*php -exec grep ini_set {} \;
(...)
ini_set('max_execution_time', 0);</pre>
<p>Evidentemente podemos evitar que esto ocurra con <a href="http://systemadmin.es/2012/05/php_admin_value-y-php_admin_flag">php_admin_value o php_admin_flag</a>, pero en realidad dichas funciones simplemente <strong>deberían ser usadas con mayor responsabilidad</strong>.</p>
<p>Nuestra fuente: <a href="http://systemadmin.es/2012/05/el-mal-de-htaccess-y-los-ini_set-de-php" target="_blank">Systemadmin</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/el-mal-de-htaccess-y-los-ini_set-de-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe presenta su Creative Suite CS6</title>
		<link>http://www.adobe-user-group-granada.es/adobe-presenta-su-creative-suite-cs6/</link>
		<comments>http://www.adobe-user-group-granada.es/adobe-presenta-su-creative-suite-cs6/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 15:43:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[noticias]]></category>
		<category><![CDATA[novedades]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[creative suite]]></category>
		<category><![CDATA[cs6]]></category>
		<category><![CDATA[diseño]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1040</guid>
		<description><![CDATA[El software Adobe  Creative Suite 6 Master Collection ofrece un rendimiento sin  precedentes, con compatibilidad nativa de 64 bits muy rápida y  aceleración por GPU. Incluye novedosas herramientas creativas que le  proporcionan formas innovadoras de diseño para los últimos dispositivos.  Con una potencia y precisión excepcionales, puede crear experiencias  [...]]]></description>
			<content:encoded><![CDATA[<p>El software Adobe  Creative Suite 6 Master Collection ofrece un rendimiento sin  precedentes, con compatibilidad nativa de 64 bits muy rápida y  aceleración por GPU. Incluye novedosas herramientas creativas que le  proporcionan formas innovadoras de diseño para los últimos dispositivos.  Con una potencia y precisión excepcionales, puede crear experiencias  inspiradoras que llegan a cualquier lugar.</p>
<div>
<div>
<div id="content-dotcom-es-products-creativesuite-mastercollection-jcr-content-bodycontent1-multicolumn_b8ab-columnparsys-ttt">
<div>
<div>
<h3><span id="more-1040"></span></h3>
<h3><span style="color: #000000;">Consulte las principales funciones nuevas de CS6 Master Collection </span></h3>
<div>
<p>Con innovadoras y novedosas herramientas creativas,  puede entregar experiencias inspiradoras en prácticamente cualquier  sitio. Master Collection le ofrece compatibilidad nativa de 64 bits y  aceleración por GPU para proporcionar a los componentes esenciales una  potencia sin precedentes.*</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
<div id="content-dotcom-es-products-creativesuite-mastercollection-jcr-content-bodycontent1-multicolumn_b8ab-columnparsys-ttt_0">
<div>
<div>
<h3><span style="color: #000000;">Diseñe sin límites </span></h3>
<div>
<p>Enfréntese a cualquier desafío creativo que se  interponga en su camino. Use el conjunto de herramientas profesionales  más innovador para explorar nuevas formas de diseñar experiencias  increíbles para impresión, vídeo y la Web.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
<div id="content-dotcom-es-products-creativesuite-mastercollection-jcr-content-bodycontent1-multicolumn_b8ab-columnparsys-ttt_1">
<div>
<div>
<h3><span style="color: #000000;">Trabaje a la velocidad de su imaginación</span></h3>
<div>
<p>Trabaje con fluidez en sus proyectos más complejos  con las herramientas optimizadas recientemente para aumentar la  velocidad y rendimiento. Las funciones remodeladas le permiten crear con  un número de pasos mucho menor para obtener la máxima eficacia.</p>
</div>
</div>
</div>
</div>
</div>
</div>
<h3><span style="color: #000000;">Envíe prácticamente a cualquier lugar</span></h3>
<p>Llegue a más personas en más lugares diseñando con  los últimos estándares web, de vídeo y de dispositivos móviles. Cree  sorprendentes experiencias con capacidad de respuesta que se adaptan a  prácticamente todos los tamaños de pantalla y factores de forma.</p>
<p>Más información en la web de <a title="Adobe Creative Suite CS6" href="http://www.adobe.com/es/products/creativesuite/mastercollection.html" target="_blank">Adobe</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/adobe-presenta-su-creative-suite-cs6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grabación eSeminario sobre comportamientos de servidor</title>
		<link>http://www.adobe-user-group-granada.es/grabacion-eseminario-sobre-comportamientos-de-servidor/</link>
		<comments>http://www.adobe-user-group-granada.es/grabacion-eseminario-sobre-comportamientos-de-servidor/#comments</comments>
		<pubDate>Sat, 31 Mar 2012 09:22:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[eventos]]></category>
		<category><![CDATA[enlaces]]></category>
		<category><![CDATA[eseminario]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1037</guid>
		<description><![CDATA[Para los que os perdierais el eSeminario sobre comportamientos de servidor, realizado el pasado 30 de marzo; os informamos de que ya está disponible la grabación íntegra en el siguiente enlace: Comportamientos de servidor
Os informamos de que estamos abiertos a sugerencias para nuevos eSeminarios.
]]></description>
			<content:encoded><![CDATA[<p>Para los que os perdierais el eSeminario sobre comportamientos de servidor, realizado el pasado 30 de marzo; os informamos de que ya está disponible la grabación íntegra en el siguiente enlace: <a title="Comportamientos de servidor" href="http://bit.ly/augg-0312" target="_blank">Comportamientos de servidor</a></p>
<p>Os informamos de que estamos abiertos a sugerencias para nuevos eSeminarios.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/grabacion-eseminario-sobre-comportamientos-de-servidor/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Encuentro 30 de marzo 2012</title>
		<link>http://www.adobe-user-group-granada.es/encuentro-30-de-marzo-2012/</link>
		<comments>http://www.adobe-user-group-granada.es/encuentro-30-de-marzo-2012/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 17:36:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[encuentro]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1034</guid>
		<description><![CDATA[Estimados Compañeros,
Mañana 30 de Marzo a las 18.30 GMT +1 (Hora de España) haremos un pequeño encuentro mediante Adobe Connect con el fín de simplemente encontrarnos y ver que ideas surgen para llevar acabo en el  Adobe User Group Granada.
Aprovecharemos el encuentro para dar pequeña introducción a Comportamientos de Servidor usando Adobe Dreamweaver que a [...]]]></description>
			<content:encoded><![CDATA[<p>Estimados Compañeros,</p>
<p>Mañana 30 de Marzo a las 18.30 GMT +1 (Hora de España) haremos un pequeño encuentro mediante Adobe Connect con el fín de simplemente encontrarnos y ver que ideas surgen para llevar acabo en el  Adobe User Group Granada.</p>
<p>Aprovecharemos el encuentro para dar pequeña introducción a Comportamientos de Servidor usando Adobe Dreamweaver que a veces nos ayudan mucho en tareas cotidianas.</p>
<p>Los esperamos!</p>
<p>URL:    <a href="http://experts.adobeconnect.com/augg201203/" target="_blank">http://experts.adobeconnect.com/augg201203/</a></p>
<p>Os esperamos!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/encuentro-30-de-marzo-2012/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Photoshop CS6 Beta</title>
		<link>http://www.adobe-user-group-granada.es/photoshop-cs6-beta/</link>
		<comments>http://www.adobe-user-group-granada.es/photoshop-cs6-beta/#comments</comments>
		<pubDate>Sat, 24 Mar 2012 09:34:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[noticias]]></category>
		<category><![CDATA[novedades]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[cs6]]></category>
		<category><![CDATA[photoshop]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1031</guid>
		<description><![CDATA[Esta semana hemos tenido la gran noticia de Adobe: ya está disponible la versión Beta de su flamante Photoshop CS6 con un entorno mejorado.
Tambien tiene mejoras en el rendimiento y en la organización de los elementos.
Pero bueno, no os hago poerder más tiemp, podeis entrar en su web para descargarlo y empezar a probarlo.  Photoshop [...]]]></description>
			<content:encoded><![CDATA[<p>Esta semana hemos tenido la gran noticia de Adobe: ya está disponible la versión Beta de su flamante Photoshop CS6 con un entorno mejorado.</p>
<p>Tambien tiene mejoras en el rendimiento y en la organización de los elementos.</p>
<p>Pero bueno, no os hago poerder más tiemp, podeis entrar en su web para descargarlo y empezar a probarlo.  <a title="Photoshop CS6 Beta" href="http://labs.adobe.com/technologies/photoshopcs6/" target="_blank">Photoshop CS6 Beta</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/photoshop-cs6-beta/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Presentación de PideCurso en Granada</title>
		<link>http://www.adobe-user-group-granada.es/presentacion-de-pidecurso-en-granada/</link>
		<comments>http://www.adobe-user-group-granada.es/presentacion-de-pidecurso-en-granada/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 19:06:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[eventos]]></category>
		<category><![CDATA[noticias]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[móviles]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1025</guid>
		<description><![CDATA[El próximo viernes se realiza la presentación de PideCurso en nuestra ciudad. Nosotros asistiremos para dar nuestro apoyo a este emprendimiento que viene de la mano del ex presidente y actual vice-presidente de la Asociación de Webmaster de Granada. Te esperamos y a continuación os dejamos la información sobre este evento:
Con motivo de la presentación de [...]]]></description>
			<content:encoded><![CDATA[<div>El próximo viernes se realiza la presentación de <strong>PideCurso </strong>en nuestra ciudad. Nosotros asistiremos para dar nuestro apoyo a este emprendimiento que viene de la mano del ex presidente y actual vice-presidente de la Asociación de Webmaster de Granada. Te esperamos y a continuación os dejamos la información sobre este evento:</div>
<div>Con motivo de la presentación de PideCurso, nuestro equipo se ha puesto las pilas y ha decidido organizar una Jornada titulada: “<strong>Nuevos retos profesionales; web y móvil</strong>“, donde algunos de los representantes de los grupos locales como <a title="NSCoder Granada" href="https://twitter.com/nscoder_grn" target="_blank">NSCoder</a>, el <a title="Grupo de Usuarios de las Tecnologías de Google" href="http://granada.gtugs.org/" target="_blank">Grupo de Usuarios de las Tecnologías de Google (GTUG)</a> o la <a title="Asociación de Webmasters de Granada" href="http://www.webmastergranada.es/" target="_blank">Asociación de Webmasters de Granada (AWGR)</a> participarán dando charlas de algunas de las temáticas disponibles en nuestra web y cómo se enfocan éstas actualmente. Además, <strong>habrá un espacio dedicado a la presentación de proyectos</strong> web y móvil para aquellos interesados en dar a conocer sus trabajos, ideas, etc.</div>
<div><span id="more-1025"></span></div>
<div><a href="http://blog.pidecurso.es/wp-content/http://www.adobe-user-group-granada.es/boletines/uploads/2012/01/Captura-de-pantalla-2012-01-17-a-las-10.34.393.png" target="_blank"><br />
</a>Al evento asistirá el <a href="http://pidecurso.es/sobre-pidecurso/" target="_blank">equipo de PideCurso</a> al completo, algunos docentes que participan en los cursos, asociaciones y empresas que colaboran con nosotros. Aquí os dejamos el programa al completo de la jornada.</div>
<p>El evento será:</p>
<ul>
<li>Fecha: el <strong>viernes 27 de Enero de 2012 .</strong></li>
<li>Lugar: en el auditorio de la<strong> <a title="ETSIIT - Facultad de Informática (Google Maps)" href="http://maps.google.com/maps/ms?msid=204520629691711228427.0004952b1bc5d25f479b8&amp;msa=0&amp;ll=37.197275,-3.624389&amp;spn=0.001577,0.00284" target="_blank">Facultad de Informática</a></strong>.</li>
<li>Coste: la <strong>asistencia es gratuita</strong>.</li>
<li>Inscripciones: dado que el aforo es limitado <strong>es necesario </strong><a href="http://grm.vg/5AS" target="_blank"><strong>inscribirse</strong> aquí</a>: <a href="http://grm.vg/5AS" target="_blank">http://grm.vg/5AS</a>.</li>
</ul>
<p>¡No te lo puedes perder!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/presentacion-de-pidecurso-en-granada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Progreso de subida de ficheros únicamente con HTML5</title>
		<link>http://www.adobe-user-group-granada.es/progreso-de-subida-de-ficheros-unicamente-con-html5/</link>
		<comments>http://www.adobe-user-group-granada.es/progreso-de-subida-de-ficheros-unicamente-con-html5/#comments</comments>
		<pubDate>Sun, 11 Dec 2011 12:42:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[artículos]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[tutoriales]]></category>
		<category><![CDATA[html5]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1023</guid>
		<description><![CDATA[Uno de los mayores problemas con los que nos hemos encontrado a la  hora de hacer aplicaciones que suben ficheros, es mostrar al usuario  cuánto se ha subido y así poder saber cuánto queda. Ahora con HTML5 y  XMLHttpRequest Level 2 podemos mostrarlo sin necesidad de parte del  servidor.
El script hace [...]]]></description>
			<content:encoded><![CDATA[<p>Uno de los mayores problemas con los que nos hemos encontrado a la  hora de hacer aplicaciones que suben ficheros, es mostrar al usuario  cuánto se ha subido y así poder saber cuánto queda. Ahora con HTML5 y  XMLHttpRequest Level 2 podemos mostrarlo sin necesidad de parte del  servidor.</p>
<p>El script hace uso de <a href="http://www.w3.org/TR/progress-events/">Evento de Progreso</a> de HTML5 para poder mostrar:</p>
<ul>
<li><strong>total</strong>: total de bytes</li>
<li><strong>loaded</strong>: bytes subidos</li>
<li><strong>lengthComputable</strong>: indica si el tamaño del fichero es conocido</li>
<li><strong>transferSpeed</strong>: velocidad de transferencia</li>
<li><strong>timeRemaining</strong>: tiempo que falta (en formato Date)</li>
</ul>
<p>Por ahora solo es compatible con Firefox, Chrome y Safari.</p>
<p>En el post lo explican con gran detalle.</p>
<p><a href="http://www.matlus.com/html5-file-upload-with-progress/">Html5 File Upload with Progress </a></p>
<p>Nuestra fuente: <a href="http://sentidoweb.com/2011/11/19/progreso-de-subida-de-ficheros-unicamente-con-html5.php?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+sentidoweb+%28Sentido+Web%29&amp;utm_content=Google+International" target="_blank">Sentidoweb</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/progreso-de-subida-de-ficheros-unicamente-con-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guía de supervivencia con Apache</title>
		<link>http://www.adobe-user-group-granada.es/guia-de-supervivencia-con-apache/</link>
		<comments>http://www.adobe-user-group-granada.es/guia-de-supervivencia-con-apache/#comments</comments>
		<pubDate>Thu, 17 Nov 2011 18:31:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[apache]]></category>
		<category><![CDATA[artículos]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[tutoriales]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1019</guid>
		<description><![CDATA[El servidor web Apache es uno de los más extendidos y con más opciones de configuración, esto implica que es complejo. Vamos a ver cómo sobrevivir con Apache.


Guía de supervivencia con Apache

Otras veces ya hemos visto como realizar una instalación de Apache con PHP y eAccelerator, una vez instalado los ficheros ejecutables importantes son:

apachectl: Mediante [...]]]></description>
			<content:encoded><![CDATA[<p>El <strong>servidor web Apache</strong> es uno de los más extendidos y con más opciones de configuración, esto implica que es complejo. Vamos a ver <strong>cómo sobrevivir con Apache</strong>.</p>
<p><span id="more-1019"></span></p>
<div id="attachment_3639">
<p><a href="http://systemadmin.es/wp-content/uploads/2011/11/supervivencia-con-Apache.jpg"></a>Guía de supervivencia con Apache</p>
</div>
<p>Otras veces ya hemos visto como realizar una <a href="http://systemadmin.es/2009/08/instalacion-de-un-servidor-lamp-v-apache-con-php-y-eaccelerator">instalación de Apache con PHP y eAccelerator</a>, una vez instalado los ficheros ejecutables importantes son:</p>
<ul>
<li><strong>apachectl</strong>: Mediante este script podremos:
<ul>
<li>Gestionar el arranque y parada del daemon (<strong>start</strong>/<strong>stop</strong>)</li>
<li>Comprobar la configuración (<strong>configtest</strong>):
<pre># /usr/local/apache22/bin/apachectl configtest
Syntax OK</pre>
</li>
<li>Recargar la configuración en caliente, sin apagar el daemon (<strong>graceful</strong>)</li>
</ul>
</li>
<li><strong>httpd</strong>: Binario del daemon, con dicho fichero podemos:
<ul>
<li>Indicar que fichero de configuración cargar (<strong>opción -f</strong>)</li>
<li>Ver el listado de módulos que carga (<strong>opción -M</strong>):
<pre># /usr/local/apache22/bin/httpd -M
Loaded Modules:
 core_module (static)
(...)
 jrun_module (shared)</pre>
</li>
<li>Al igual que con <strong>apachectl</strong>, comprobar la configuración con la <strong>opción -t</strong>:
<pre># /usr/local/apache22/bin/httpd -t
Syntax OK</pre>
</li>
<li>Ver el resumen de configuración de los <strong>VirtualHosts</strong> con la <strong>opción -S</strong>:
<pre># /usr/local/apache22/bin/httpd -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server shuvak.systemadmin.es (/usr/local/apache22/conf/extra/httpd-vhosts.conf:7)
         port 80 namevhost shuvak.systemadmin.es (/usr/local/apache22/conf/extra/httpd-vhosts.conf:7)
         port 80 namevhost systemadmin.es (/usr/local/apache22/conf/extra/vhosts/systemadmin.es.conf:1)
         port 80 namevhost foro.systemadmin.es (/usr/local/apache22/conf/extra/vhosts/foro.systemadmin.es.conf:1)
Syntax OK</pre>
</li>
</ul>
</li>
</ul>
<p>Un ejemplo de <strong>configuración típica de un VirtualHost</strong> sería la siguiente:</p>
<pre>&lt;VirtualHost *:80&gt;
        DocumentRoot "/var/www/systemadmin.es/htdocs"
        DirectoryIndex index.php
        ServerName systemadmin.es
        ServerAlias foro.systemadmin.es

        &lt;Directory /var/www/systemadmin.es/htdocs&gt;
            Options FollowSymLinks
            AllowOverride all
            Order deny,allow
            Allow from all
        &lt;/Directory&gt;

        ErrorLog  "| /usr/local/sbin/cronolog -S /var/www/systemadmin.es/logs/current.error.log /var/www/systemadmin.es/logs/%Y/%m/%d/error.log"
        CustomLog "| /usr/local/sbin/cronolog -S /var/www/systemadmin.es/logs/current.custom.log /var/www/systemadmin.es/logs/%Y/%m/%d/custom.log" combined

&lt;/VirtualHost&gt;</pre>
<p>Las directivas importantes son:</p>
<ul>
<li><strong>DocumentRoot</strong>: Directorio base desde el cual  serviremos el contenido. Deberemos acompañarlo de la directiva Directory  para establecer si se puede servir o no su contenido</li>
<li><strong>DirectoryIndex</strong>: Cuando se intente servir la raíz o  cualquier directorio (sin especificar fichero), cual se debería servir.  Típicamente se usa index.algo, pero podría ser cualquier fichero. Esta  directiva indica que fichero servir y en que orden de prioridad. Por  ejemplo:
<pre>DirectoryIndex index.php index.html index.htm</pre>
<p>Primero miraría si existe un fichero <strong>index.php</strong>, en caso que no exista buscaría el siguiente (<strong>index.html</strong>) y así el listado que indiquemos. En caso que no exista ninguno, <strong>se serviría un 404</strong></li>
<li><strong>ServerName</strong> y <strong>ServerAlias</strong>: Nombres a los que responde según el <a href="http://systemadmin.es/2010/08/especificar-que-host-header-debe-usar-el-curl">header Host</a>. Se pueden <strong>especificar wildcards</strong> tanto pode delante (<strong>*.systemadmin.es</strong>) como por detrás (<strong>webmail.*</strong>). La diferencia entre <strong>ServerName</strong> y <strong>ServerAlias</strong> a la practica tiene poca importancia.</li>
</ul>
<p>En cuanto a la <strong>gestión de logs</strong>, personalmente uso <a href="http://systemadmin.es/2009/01/rotacion-de-logs-de-apache-mediante-cronolog">cronolog</a> ya que una vez configurado cómo queremos almacenar los logs no  deberemos hacer mantenimiento a no se que queramos eliminar los  antiguos. Para ello suelo emplear un simple script que haga limpieza:</p>
<pre>#!/bin/bash
for i in $(find /var/www/ -maxdepth 2 -iname logs);
do

        #eliminacion de los mas antiguos de 10 dias
        find $i -mtime +10 -type f -exec rm {} \;

        #eliminacion de directios vacios
        find $i -empty -type d -exec rmdir {} \; 2&gt;/dev/null

        #compresión de logs ya rotados
        find $i -type f -iname \*\.log -mtime +2 -exec gzip {} \;

done</pre>
<p>Deberemos <strong>adaptar el find del for</strong> para que encuentre los directorios raíz dónde tenemos los logs.</p>
<p>Para conocer el estado del Apache existe el <a href="http://systemadmin.es/2009/02/instalacion-del-server-status-mod_status-de-apache">modulo mod_status</a>, que nos indica que esta haciendo dicho daemon. Generalmente se instala en <strong>/server-staus</strong> con <strong>acceso limitado por IP de origen</strong>.</p>
<p>En el <strong>scoreboard</strong> veremos los estado del los <strong>apachitos</strong> (procesos apache) y podremos ver si existe algún problema con algún VirtualHost. Típicamente podremos ver:</p>
<ul>
<li>Se nos llena el scoreboard de <strong>W</strong>: Cuando un slot esta en estado W significa que esta contestando, pero si vemos que se nos acumulan <strong>W</strong> posiblemente esta contestando muy lentamente por algún motivo o bien  simplemente se queda colgado. Generalmente indica problemas en la base  de datos.Si habilitamos la opción
<pre>ExtendedStatus On</pre>
<p>Tendremos un listado de todas las peticiones y su estado, para cuanto  tiempo lleva un slot en el estado actual deberemos fijarnos en la  columna <strong>SS</strong>. Por lo tanto, las peticiones <strong>en estado W que tenga el SS alto</strong> son las primeras que deberemos investigar. Evidentemente, si servimos contenido estático (un <strong>mp3</strong>) es lógico que tarde en ser entregado y por lo tanto que <strong>su SS sea alto</strong>.</li>
<li>Se nos llena el scoreboard de <strong>K</strong>: Tendremos que ver  si nos interesa reducir el tiempo de KeepAlive de las conexiones. Por  defecto lo tenemos a 5 segundos, pero lo podemos dejar en 1 o 2 segundos  según la aplicación.</li>
</ul>
<p>En otra ocasión ya hablamos de en que debemos fijarnos para <a href="http://systemadmin.es/2010/04/encontrar-la-raiz-del-problema-en-un-entorno-lamp-i">entender el problema que tenga un entorno LAMP</a></p>
<p>Otra cosa a tener en cuenta es la <a href="http://systemadmin.es/2009/04/diferencia-entre-serverlimit-y-maxclients-de-apache">diferencia entre ServerLimit y MaxClients</a>: <strong>ServerLimit</strong> es el límite fijo que no puede ser modificado mediante una recarga de configuración (graceful) mientras que <strong>MaxClients</strong> es el límite actual.</p>
<p>Actualmente <strong>mod_status</strong> no muestra los slots de Apache que quedan deshabilitados por la directiva <strong>MaxClients</strong>, por lo que nos puede dar pie a error al suponerlos libres. En su momento hice un patch para evitar esto y <strong>será incluido en la próxima release de Apache</strong> (2.4), actualmente <a href="http://systemadmin.es/2011/03/apache-2-4-beta-httpd-2-3-11">ya se encuentra disponible en la versión beta desde la versión 2.3.11</a>.</p>
<p>Nuestra fuente: <a href="http://systemadmin.es/2011/11/guia-de-supervivencia-con-apache" target="_blank">Systemadmin</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/guia-de-supervivencia-con-apache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Workshop de Adobe Digital Publishing Suite</title>
		<link>http://www.adobe-user-group-granada.es/workshop-de-adobe-digital-publishing-suite/</link>
		<comments>http://www.adobe-user-group-granada.es/workshop-de-adobe-digital-publishing-suite/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 10:44:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[anuncios]]></category>
		<category><![CDATA[adobe]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1016</guid>
		<description><![CDATA[Últimas plazas para un workshop de Adobe Digital Publishing Suite!!!!
Grupo reducido, dirigido a profesionales del sector editorial interesados en dar el salto a la publicación digital.
Agenda

10.00 – 11.30 Presentación &#38; Folio Builder
11.30 – 12.00 Coffee Break
12.00 – 13.30 Overlay Creator
13.30 – 15.30 Descanso para comer
15.30 – 17.30 Viewer Builder y Diferentes modalidades de distribución comercial

¿Cuándo [...]]]></description>
			<content:encoded><![CDATA[<p>Últimas plazas para un workshop de Adobe Digital Publishing Suite!!!!<br />
Grupo reducido, dirigido a profesionales del sector editorial interesados en dar el salto a la publicación digital.</p>
<p><strong>Agenda</strong></p>
<ul>
<li>10.00 – 11.30 Presentación &amp; Folio Builder</li>
<li>11.30 – 12.00 Coffee Break</li>
<li>12.00 – 13.30 Overlay Creator</li>
<li>13.30 – 15.30 Descanso para comer</li>
<li>15.30 – 17.30 Viewer Builder y Diferentes modalidades de distribución comercial</li>
</ul>
<p><strong>¿Cuándo y dónde?</strong><br />
Viernes 11 en las oficinas de Adobe en la Torre Mapfre, Barcelona.</p>
<p><strong>¿Registro?</strong><br />
Gratuito y por orden de inscripción hasta llenar las plazas. Envía email para apuntarte: nlopez@adobe.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/workshop-de-adobe-digital-publishing-suite/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crear ficheros ZIP mediante Javascript con JSZip</title>
		<link>http://www.adobe-user-group-granada.es/crear-ficheros-zip-mediante-javascript-con-jszip/</link>
		<comments>http://www.adobe-user-group-granada.es/crear-ficheros-zip-mediante-javascript-con-jszip/#comments</comments>
		<pubDate>Thu, 03 Nov 2011 20:16:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[artículos]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://www.adobe-user-group-granada.es/?p=1012</guid>
		<description><![CDATA[Interesante librería que nos permite crear ficheros ZIP desde  Javascript, con unas simples líneas de código podemos crear zips con  ficheros de texto, imágenes, crear directorios…
var zip = new JSZip();
zip.add("Hello.txt", "Hello World\n");
img = zip.folder("images");
img.add("smile.gif", imgData, {base64: true});
content = zip.generate();
location.href="data:application/zip;base64,"+content;
El único problema que hay es a la hora de generar el nombre del  [...]]]></description>
			<content:encoded><![CDATA[<p>Interesante librería que nos permite crear ficheros ZIP desde  Javascript, con unas simples líneas de código podemos crear zips con  ficheros de texto, imágenes, crear directorios…</p>
<pre>var zip = new JSZip();
zip.add("Hello.txt", "Hello World\n");
img = zip.folder("images");
img.add("smile.gif", imgData, {base64: true});
content = zip.generate();
location.href="data:application/zip;base64,"+content;</pre>
<p>El único problema que hay es a la hora de generar el nombre del  fichero: Firefox crea un fichero con un nombre extraño y acabado en  .part, Safari lo nombra “Unknown” sin extensión, Chrome “download.zip” e  IE directamente ni funciona la librería.</p>
<p>Nuestra fuente: <a href="http://sentidoweb.com/2011/10/06/jszip-crear-ficheros-zip-mediante-javascript.php?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+sentidoweb+%28Sentido+Web%29&amp;utm_content=Google+International" target="_blank">SentidoWeb</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adobe-user-group-granada.es/crear-ficheros-zip-mediante-javascript-con-jszip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

