<?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>Zelofan &#187; Tech</title>
	<atom:link href="http://www.zelofan.net/blog/category/enlacestech/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zelofan.net/blog</link>
	<description>Stories, music, flyers &#038; tech</description>
	<lastBuildDate>Tue, 17 Jan 2012 12:40:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Instalar apache+php+mysql+mod_wsgi en Snow Leopard</title>
		<link>http://www.zelofan.net/blog/2011/01/04/instalar-apachephpmysqlmod_wsgi-en-snow-leopard/</link>
		<comments>http://www.zelofan.net/blog/2011/01/04/instalar-apachephpmysqlmod_wsgi-en-snow-leopard/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 20:02:37 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[mod_wsgi]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=1761</guid>
		<description><![CDATA[Últimamente, por diferentes circunstancias, he tenido que probar cosas nuevas en Apache. Hasta ahora, siempre había utilizado MAMP por su sencillez para ser instalado en Snow Leopard, pero una vez que necesitas nuevos módulos, versiones diferentes de los paquetes, etc&#8230; la cosa se complica bastante. Así que me decidí por utilizar MacPorts para configurar un [...]]]></description>
			<content:encoded><![CDATA[<div class="jLanguage">
<ul>
<li><a href="?lan=english"><img alt="english" src="http://www.zelofan.net/blog/wp-content/plugins/jLanguage/icons/en.png" /></a></li>
<li><a href="?lan=spanish"><img alt="spanish" src="http://www.zelofan.net/blog/wp-content/plugins/jLanguage/icons/es.png" /></a></li>
</ul>
</div>
<p>Últimamente, por diferentes circunstancias, he tenido que probar cosas nuevas en Apache. Hasta ahora, siempre había utilizado <a href="http://www.mamp.info/en/index.html">MAMP</a> por su sencillez para ser instalado en Snow Leopard, pero una vez que necesitas nuevos módulos, versiones diferentes de los paquetes, etc&#8230; la cosa se complica bastante. Así que me decidí por utilizar <a href="http://www.macports.org">MacPorts</a> para configurar un entorno de desarrollo local a medida. </p>
<h2>Instalación de XCode Developer Tools y MacPorts.<br />
</h2>
<p>En el dvd de Snow Leopard disponemos de <a href="http://developer.apple.com/technologies/tools/xcode.html">XCode Developer Tools</a>. Lo instalamos, asegurándonos de instalar las utilidades de desarrollo desde la línea de comandos (Unix Development).</p>
<p>A continuación, descargamos <a href="http://www.macports.org/">macports</a> (en este momento, versión 1.9.2). Instalamos como cualquier otra aplicación en Snow Leopard y nos aseguramos de tener todo actualizado a la última versión, abriendo un terminal y ejecutando<br />
<div id="wpshdo_21" class="wp-synhighlighter-outer"><div id="wpshdt_21" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_21"></a><a id="wpshat_21" class="wp-synhighlighter-title" href="#codesyntax_21"  onClick="javascript:wpsh_toggleBlock(21)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_21" onClick="javascript:wpsh_code(21)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_21" onClick="javascript:wpsh_print(21)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_21" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> port <span class="re5">-v</span> selfupdate</pre></div></div></p>
<h2>Instalación de  MySQL<br />
</h2>
<p>Comenzamos a utilizar macports, muy parecido a apt-get de debian, para instalar el servidor de MySQL (v5.1):<br />
<div id="wpshdo_22" class="wp-synhighlighter-outer"><div id="wpshdt_22" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_22"></a><a id="wpshat_22" class="wp-synhighlighter-title" href="#codesyntax_22"  onClick="javascript:wpsh_toggleBlock(22)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_22" onClick="javascript:wpsh_code(22)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_22" onClick="javascript:wpsh_print(22)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_22" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> port <span class="kw2">install</span> mysql5-server
<span class="kw2">sudo</span> <span class="re5">-u</span> mysql mysql_install_db5</pre></div></div></p>
<p>Hay varias formas de poner en marcha el demonio de mysql. Como no me gusta tener más demonios de la cuenta en el arranque del sistema, lo voy a poner en marcha manualmente cada vez que quiera utilizarlo. Una de las formas de ponerlo en marcha (más adelante crearemos un alias para no tener que escribir toda la ruta):<br />
<div id="wpshdo_23" class="wp-synhighlighter-outer"><div id="wpshdt_23" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_23"></a><a id="wpshat_23" class="wp-synhighlighter-title" href="#codesyntax_23"  onClick="javascript:wpsh_toggleBlock(23)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_23" onClick="javascript:wpsh_code(23)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_23" onClick="javascript:wpsh_print(23)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_23" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> <span class="sy0">/</span>opt<span class="sy0">/</span>local<span class="sy0">/</span>etc<span class="sy0">/</span>LaunchDaemons<span class="sy0">/</span>org.macports.mysql5<span class="sy0">/</span>mysql5.wrapper start</pre></div></div></p>
<p>Ahora, si vamos a trabajar en local, creamos la contraseña de root de mysql con<br />
<div id="wpshdo_24" class="wp-synhighlighter-outer"><div id="wpshdt_24" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_24"></a><a id="wpshat_24" class="wp-synhighlighter-title" href="#codesyntax_24"  onClick="javascript:wpsh_toggleBlock(24)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_24" onClick="javascript:wpsh_code(24)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_24" onClick="javascript:wpsh_print(24)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_24" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="sy0">/</span>opt<span class="sy0">/</span>local<span class="sy0">/</span>lib<span class="sy0">/</span>mysql5<span class="sy0">/</span>bin<span class="sy0">/</span>mysqladmin <span class="re5">-u</span> root password <span class="st_h">'password'</span></pre></div></div></p>
<p>(Para entornos de producción, además de cambiar el password, habría que cambiar más cosas, como deshabilitar el acceso anónimo y el acceso remoto de root, con /opt/local/lib/mysql5/bin/mysql_secure_installation)</p>
<h2>Instalación de Apache</h2>
<p>Para instalar apache, volvemos a hacer uso de macports y, como he estado jugando con python/django, instalo también el módulo mod_wsgi (una de las cosas &#8220;complicadas&#8221; con MAMP):<br />
<div id="wpshdo_25" class="wp-synhighlighter-outer"><div id="wpshdt_25" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_25"></a><a id="wpshat_25" class="wp-synhighlighter-title" href="#codesyntax_25"  onClick="javascript:wpsh_toggleBlock(25)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_25" onClick="javascript:wpsh_code(25)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_25" onClick="javascript:wpsh_print(25)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_25" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> port <span class="kw2">install</span> apache2 mod_wsgi</pre></div></div></p>
<p>A continuación, editamos el archivo de configuración de apache /opt/local/apache2/conf/httpd.conf para añadir el módulo de wsgi y, ya que estamos, cambiar el nombre del servidor:<br />
<div id="wpshdo_26" class="wp-synhighlighter-outer"><div id="wpshdt_26" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_26"></a><a id="wpshat_26" class="wp-synhighlighter-title" href="#codesyntax_26"  onClick="javascript:wpsh_toggleBlock(26)" title="Click to show/hide code block">/opt/local/apache2/conf/httpd.conf</a></td><td align="right"><a href="#codesyntax_26" onClick="javascript:wpsh_code(26)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_26" onClick="javascript:wpsh_print(26)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_26" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;"><span class="kw1">LoadModule</span> wsgi_module modules/mod_wsgi.so
<span class="kw1">ServerName</span> localhost</pre></div></div></p>
<h2>Instalación de PHP</h2>
<p>Ahora instalamos php5, con los módulos para apache2 y mysql5.<br />
<div id="wpshdo_27" class="wp-synhighlighter-outer"><div id="wpshdt_27" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_27"></a><a id="wpshat_27" class="wp-synhighlighter-title" href="#codesyntax_27"  onClick="javascript:wpsh_toggleBlock(27)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_27" onClick="javascript:wpsh_code(27)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_27" onClick="javascript:wpsh_print(27)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_27" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> port <span class="kw2">install</span> php5 +apache2 php5-mysql</pre></div></div><br />
Activamos el módulo de php en apache con<br />
<div id="wpshdo_28" class="wp-synhighlighter-outer"><div id="wpshdt_28" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_28"></a><a id="wpshat_28" class="wp-synhighlighter-title" href="#codesyntax_28"  onClick="javascript:wpsh_toggleBlock(28)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_28" onClick="javascript:wpsh_code(28)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_28" onClick="javascript:wpsh_print(28)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_28" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw3">cd</span> <span class="sy0">/</span>opt<span class="sy0">/</span>local<span class="sy0">/</span>apache2<span class="sy0">/</span>modules
<span class="kw2">sudo</span> <span class="sy0">/</span>opt<span class="sy0">/</span>local<span class="sy0">/</span>apache2<span class="sy0">/</span>bin<span class="sy0">/</span>apxs <span class="re5">-a</span> <span class="re5">-e</span> <span class="re5">-n</span> <span class="st0">&quot;php5&quot;</span> libphp5.so</pre></div></div><br />
y editamos de nuevo /opt/local/apache2/conf/httpd.conf para añadir en la sección de mime types a los ficheros .php:<br />
<div id="wpshdo_29" class="wp-synhighlighter-outer"><div id="wpshdt_29" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_29"></a><a id="wpshat_29" class="wp-synhighlighter-title" href="#codesyntax_29"  onClick="javascript:wpsh_toggleBlock(29)" title="Click to show/hide code block">/opt/local/apache2/conf/httpd.conf</a></td><td align="right"><a href="#codesyntax_29" onClick="javascript:wpsh_code(29)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_29" onClick="javascript:wpsh_print(29)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_29" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;"><span class="kw1">AddType</span> application/x-httpd-php .php</pre></div></div></p>
<p>Como archivo de configuración de php, tenemos dos archivos php.ini de ejemplo en /opt/local/etc/php5. Como estamos en desarrollo, utizamos el php.ini-development para tener nuestro php.ini<br />
<div id="wpshdo_30" class="wp-synhighlighter-outer"><div id="wpshdt_30" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_30"></a><a id="wpshat_30" class="wp-synhighlighter-title" href="#codesyntax_30"  onClick="javascript:wpsh_toggleBlock(30)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_30" onClick="javascript:wpsh_code(30)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_30" onClick="javascript:wpsh_print(30)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_30" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> <span class="kw2">cp</span> php.ini-development php.ini</pre></div></div><br />
Por último, editamos /opt/local/etc/php5/php.ini y cambiamos date.timezone a nuestra zona y el socket de mysql:<br />
<div id="wpshdo_31" class="wp-synhighlighter-outer"><div id="wpshdt_31" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_31"></a><a id="wpshat_31" class="wp-synhighlighter-title" href="#codesyntax_31"  onClick="javascript:wpsh_toggleBlock(31)" title="Click to show/hide code block">/opt/local/etc/php5/php.ini</a></td><td align="right"><a href="#codesyntax_31" onClick="javascript:wpsh_code(31)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_31" onClick="javascript:wpsh_print(31)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_31" class="wp-synhighlighter-inner" style="display: block;"><pre class="ini" style="font-family:monospace;">date.timezone<span class="sy0">=</span><span class="re2">Europe/Madrid</span>
mysql.default_socket <span class="sy0">=</span><span class="re2"> /opt/local/var/run/mysql5/mysqld.sock</span></pre></div></div></p>
<h2>Arranque y parada de Apache y MySQL</h2>
<p>Ya sólo nos queda crear un alias para llamar y ejecutar apache y mysql cuando queramos en nuestro .profile<br />
<div id="wpshdo_32" class="wp-synhighlighter-outer"><div id="wpshdt_32" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_32"></a><a id="wpshat_32" class="wp-synhighlighter-title" href="#codesyntax_32"  onClick="javascript:wpsh_toggleBlock(32)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_32" onClick="javascript:wpsh_code(32)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_32" onClick="javascript:wpsh_print(32)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_32" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw3">cd</span> ~
<span class="kw2">nano</span> .profile</pre></div></div><br />
<div id="wpshdo_33" class="wp-synhighlighter-outer"><div id="wpshdt_33" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_33"></a><a id="wpshat_33" class="wp-synhighlighter-title" href="#codesyntax_33"  onClick="javascript:wpsh_toggleBlock(33)" title="Click to show/hide code block">~/.profile</a></td><td align="right"><a href="#codesyntax_33" onClick="javascript:wpsh_code(33)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_33" onClick="javascript:wpsh_print(33)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_33" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw3">alias</span> <span class="re2">apache2</span>=<span class="st_h">'sudo /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper'</span>
<span class="kw3">alias</span> <span class="re2">mysql5</span>=<span class="st_h">'sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper'</span>
<span class="kw3">alias</span> <span class="re2">mysql</span>=<span class="st_h">'/opt/local/bin/mysql5'</span></pre></div></div></p>
<p>De esta forma, con &#8220;apache2 start|stop|restart&#8221; y &#8220;mysql5 start|stop|restart&#8221; tenemos bajo control los demonios respectivos, y creamos un alias al cliente de mysql, por si queremos utilizarlo sin realizar la llamada con la ruta absoluta.</p>
<h2>Configuración de hosts en Apache</h2>
<p>Por defecto, Apache lee los documentos de /opt/local/apache2/htdocs. Esto lo podemos cambiar para adecuarlo a nuestras necesidades. Por ejemplo, a mí me gusta tener todas las webs en desarrollo dentro del directorio Sites de mi usuario. Para ello, editamos /opt/local/apache2/conf/httdp.conf y cambiamos el DocumentRoot de &#8220;/opt/local/apache2/htdocs&#8221; a &#8220;/Users/my_user/Sites&#8221; y la directiva Directory &#8220;/opt/local/apache2/htdocs&#8221; de la misma forma:</p>
<div id="wpshdo_34" class="wp-synhighlighter-outer"><div id="wpshdt_34" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_34"></a><a id="wpshat_34" class="wp-synhighlighter-title" href="#codesyntax_34"  onClick="javascript:wpsh_toggleBlock(34)" title="Click to show/hide code block">/opt/local/apache2/conf/httpd.conf</a></td><td align="right"><a href="#codesyntax_34" onClick="javascript:wpsh_code(34)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_34" onClick="javascript:wpsh_print(34)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_34" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;"><span class="kw1">DocumentRoot</span> <span class="st0">&quot;/Users/my_user/Sites&quot;</span>
...
&lt;<span class="kw3">Directory</span> <span class="st0">&quot;/Users/my_user/Sites&quot;</span>&gt;
...</pre></div></div>
<p>Además, normalmente tengo varias webs en desarrollo, así que vamos a utilizar hosts virtuales. Para ello, descomentamos la línea del httpd.conf:<br />
<div id="wpshdo_35" class="wp-synhighlighter-outer"><div id="wpshdt_35" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_35"></a><a id="wpshat_35" class="wp-synhighlighter-title" href="#codesyntax_35"  onClick="javascript:wpsh_toggleBlock(35)" title="Click to show/hide code block">/opt/local/apache2/conf/httpd.conf</a></td><td align="right"><a href="#codesyntax_35" onClick="javascript:wpsh_code(35)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_35" onClick="javascript:wpsh_print(35)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_35" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;"><span class="kw1">Include</span> conf/extra/httpd-vhosts.conf</pre></div></div></p>
<p>y en httpd-vhosts.conf, siguiendo el ejemplo de los que hay creados (y que debemos comentar, si no queremos errores al arrancar apache), creamos todos los hosts virtuales que necesitemos:<br />
<div id="wpshdo_36" class="wp-synhighlighter-outer"><div id="wpshdt_36" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_36"></a><a id="wpshat_36" class="wp-synhighlighter-title" href="#codesyntax_36"  onClick="javascript:wpsh_toggleBlock(36)" title="Click to show/hide code block">/opt/local/apache2/conf/extras/httpd-vhosts.conf</a></td><td align="right"><a href="#codesyntax_36" onClick="javascript:wpsh_code(36)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_36" onClick="javascript:wpsh_print(36)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_36" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;">&lt;<span class="kw3">VirtualHost</span> *:80&gt;
    <span class="kw1">DocumentRoot</span> <span class="st0">&quot;/Users/my_user/Sites/web1&quot;</span>
    <span class="kw1">ServerName</span> dominio1.localhost
    <span class="kw1">ErrorLog</span> <span class="st0">&quot;logs/error_log&quot;</span>
    <span class="kw1">CustomLog</span> <span class="st0">&quot;logs/access_log&quot;</span> common
&lt;/<span class="kw3">VirtualHost</span>&gt;
&lt;<span class="kw3">VirtualHost</span> *:80&gt;
    <span class="kw1">DocumentRoot</span> <span class="st0">&quot;/Users/my_user/Sites/web2&quot;</span>
    <span class="kw1">ServerName</span> dominio2.localhost
    <span class="kw1">ErrorLog</span> <span class="st0">&quot;logs/error_log&quot;</span>
    <span class="kw1">CustomLog</span> <span class="st0">&quot;logs/access_log&quot;</span> common
&lt;/<span class="kw3">VirtualHost</span>&gt;</pre></div></div></p>
<p>Recuerda añadir los dominios de estos hosts virtuales en /etc/hosts:<br />
<div id="wpshdo_37" class="wp-synhighlighter-outer"><div id="wpshdt_37" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_37"></a><a id="wpshat_37" class="wp-synhighlighter-title" href="#codesyntax_37"  onClick="javascript:wpsh_toggleBlock(37)" title="Click to show/hide code block">/etc/hosts</a></td><td align="right"><a href="#codesyntax_37" onClick="javascript:wpsh_code(37)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_37" onClick="javascript:wpsh_print(37)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_37" class="wp-synhighlighter-inner" style="display: block;"><pre class="text" style="font-family:monospace;">127.0.0.1 localhost
127.0.0.1 dominio1.localhost
127.0.0.1 dominio2.localhost
...</pre></div></div></p>
<h2>Instalación de phpmyadmin</h2>
<p>Como es algo que solemos utilizar muchas veces, instalamos phpmyadmin mediante macports:</p>
<div id="wpshdo_38" class="wp-synhighlighter-outer"><div id="wpshdt_38" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_38"></a><a id="wpshat_38" class="wp-synhighlighter-title" href="#codesyntax_38"  onClick="javascript:wpsh_toggleBlock(38)" title="Click to show/hide code block">Source code</a></td><td align="right"><a href="#codesyntax_38" onClick="javascript:wpsh_code(38)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_38" onClick="javascript:wpsh_print(38)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_38" class="wp-synhighlighter-inner" style="display: block;"><pre class="bash" style="font-family:monospace;"><span class="kw2">sudo</span> port <span class="kw2">install</span> phpmyadmin</pre></div></div>
<p>Sólo nos queda configurar un host virtual para acceder a él:<br />
<div id="wpshdo_39" class="wp-synhighlighter-outer"><div id="wpshdt_39" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_39"></a><a id="wpshat_39" class="wp-synhighlighter-title" href="#codesyntax_39"  onClick="javascript:wpsh_toggleBlock(39)" title="Click to show/hide code block">/opt/local/apache5/conf/extra/httpd-vhosts.conf</a></td><td align="right"><a href="#codesyntax_39" onClick="javascript:wpsh_code(39)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_39" onClick="javascript:wpsh_print(39)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_39" class="wp-synhighlighter-inner" style="display: block;"><pre class="apache" style="font-family:monospace;">&lt;<span class="kw3">VirtualHost</span> *:80&gt;
    <span class="kw1">DocumentRoot</span> <span class="st0">&quot;/opt/local/www/phpmyadmin&quot;</span>
    <span class="kw1">ServerName</span> phpmyadmin.localhost
	&lt;<span class="kw3">Directory</span> <span class="st0">&quot;/opt/local/www/phpmyadmin&quot;</span>&gt;
		<span class="kw1">Options</span> <span class="kw2">Indexes</span> <span class="kw2">FollowSymLinks</span>
		<span class="kw1">AllowOverride</span> <span class="kw2">None</span>
		<span class="kw1">Order</span> <span class="kw1">allow</span>,<span class="kw1">deny</span>
		<span class="kw1">Allow</span> from <span class="kw2">all</span>
	&lt;/<span class="kw3">Directory</span>&gt;
&lt;/<span class="kw3">VirtualHost</span>&gt;</pre></div></div><br />
añadiendo de nuevo la referencia en nuestro archivo de hosts:<br />
<div id="wpshdo_40" class="wp-synhighlighter-outer"><div id="wpshdt_40" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_40"></a><a id="wpshat_40" class="wp-synhighlighter-title" href="#codesyntax_40"  onClick="javascript:wpsh_toggleBlock(40)" title="Click to show/hide code block">/etc/hosts</a></td><td align="right"><a href="#codesyntax_40" onClick="javascript:wpsh_code(40)" title="Show code only"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_40" onClick="javascript:wpsh_print(40)" title="Print code"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Show plugin information"><img border="0" style="border: 0 none" src="http://www.zelofan.net/blog/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_40" class="wp-synhighlighter-inner" style="display: block;"><pre class="text" style="font-family:monospace;">...
127.0.0.1 phpmyadmin.localhost</pre></div></div></p>
<p>Con esto ya está todo. Tenemos un entorno de desarrollo a medida, podemos cambiar, añadir, quitar los módulos que queremos a nuestro antojo, y todo de manera sencilla gracias a macports.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2011/01/04/instalar-apachephpmysqlmod_wsgi-en-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Queen a lo retro, como Sarien</title>
		<link>http://www.zelofan.net/blog/2009/04/21/queen-a-lo-retro-como-sarien/</link>
		<comments>http://www.zelofan.net/blog/2009/04/21/queen-a-lo-retro-como-sarien/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 06:35:06 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Music]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[queen]]></category>
		<category><![CDATA[sarien]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=1142</guid>
		<description><![CDATA[Al igual que sucedió con el &#8220;Nude&#8221; de Radiohead, ayer apareció una nueva versión de &#8220;Bohemian Rapshody&#8221; de Queen, creada con todo tipo de antigüedades informáticas. Increíble con lo que se entretiene la gente. Queen &#8211; &#8220;Bohemian Rhapsody&#8221; (Old School Computer Remix) (Visto en Mangas Verdes, Menéame y ALT1040) El otro notición retro de ayer [...]]]></description>
			<content:encoded><![CDATA[<p>Al igual que sucedió con el <a href="http://www.zelofan.net/blog/2008/06/09/version-de-nude-con-un-%C2%A1spectrum-zx/">&#8220;Nude&#8221; de Radiohead</a>, ayer apareció una nueva versión de &#8220;Bohemian Rapshody&#8221; de Queen, creada con todo tipo de antigüedades informáticas. Increíble con lo que se entretiene la gente. </p>
<p>Queen &#8211; &#8220;Bohemian Rhapsody&#8221; (Old School Computer Remix) (Visto en <a href="http://mangasverdes.es/2009/04/20/bohemian-rhapsody-de-ciencia-ficcion/">Mangas Verdes</a>, <a href="http://meneame.net/story/bohemian-rhapsody-interpretado-ordenadores-antiguos">Menéame</a> y <a href="http://alt1040.com/2009/04/la-version-mas-geek-de-rapsodia-bohemia-de-queen">ALT1040</a>)</p>
<div align="center"><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/Ht96HJ01SE4&#038;color1=0xb1b1b1&#038;color2=0xcfcfcf&#038;hl=es&#038;feature=player_embedded&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.youtube.com/v/Ht96HJ01SE4&#038;color1=0xb1b1b1&#038;color2=0xcfcfcf&#038;hl=es&#038;feature=player_embedded&#038;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed></object></div>
<p>El otro notición retro de ayer fue la web de <a href="http://sarien.net/">sarien.net</a> (a través de <a href="http://ajaxian.com/archives/sarien-multiplayer-game-engine-goes-open-source">Ajaxian</a>), donde se puede jugar online a algunos clásicos de las aventuras gráficas de Sierra, como los Police Quest, Space Quest o Leisure Suit Larry (¡sí, <a href="http://www.bisente.com">Bisente</a>, sí! xD) Eso sí eran juegos de verdad&#8230;</p>
<p><img src="http://www.zelofan.net/blog/wp-content/uploads/2009/04/sarien.png" alt="sarien" title="sarien" width="440" height="220" class="aligncenter size-full wp-image-1145" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2009/04/21/queen-a-lo-retro-como-sarien/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>World Builder</title>
		<link>http://www.zelofan.net/blog/2009/03/06/world-builder/</link>
		<comments>http://www.zelofan.net/blog/2009/03/06/world-builder/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 16:50:56 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Cortos]]></category>
		<category><![CDATA[Stories]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[videos]]></category>
		<category><![CDATA[bruce banit]]></category>
		<category><![CDATA[cortos]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=1032</guid>
		<description><![CDATA[Impresionante. Un corto futurista, de menos de 10 minutos, que me ha dejado con la boca abierta. World Buider (by Bruce Banit) Lo he visto en ALT1040]]></description>
			<content:encoded><![CDATA[<p>Impresionante. Un corto futurista, de menos de 10 minutos, que me ha dejado con la boca abierta. </p>
<p>World Buider (by Bruce Banit)</p>
<div align="center"><object width="550" height="310"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3365942&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3365942&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="550" height="310"></embed></object></div>
<p>Lo he visto en <a href="http://alt1040.com/2009/03/world-builder-creando-un-mundo-en-la-realidad-virtual">ALT1040</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2009/03/06/world-builder/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ext4, como un tiro</title>
		<link>http://www.zelofan.net/blog/2009/02/19/ext4-como-un-tiro/</link>
		<comments>http://www.zelofan.net/blog/2009/02/19/ext4-como-un-tiro/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 17:27:54 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=982</guid>
		<description><![CDATA[No, no es el nombre de ningún grupo. Hablo del sistema de ficheros ext4, sucesor de ext3 (¿difícil, eh?). Lo acabo de probar en un máquina virtual con Arch Linux y, midiendo el tiempo de arranque &#8220;a lo cutre&#8221;, con el cronómetro del iPhone, ha disminuido de 28 a 20 segundos. Impresionante. A ver si [...]]]></description>
			<content:encoded><![CDATA[<p>No, no es el nombre de ningún grupo. Hablo del sistema de ficheros <a href="http://es.wikipedia.org/wiki/Ext4">ext4</a>, sucesor de ext3 (¿difícil, eh?). Lo acabo de probar en un máquina virtual con <a href="http://www.archlinux.org/">Arch Linux</a> y, midiendo el tiempo de arranque &#8220;a lo cutre&#8221;, con el cronómetro del iPhone, ha disminuido de 28 a 20 segundos. Impresionante. A ver si puedo hacer algunas pruebas más y hablar sobre él con algo más de fundamento. De momento, sólo con esto, ya llama la atención.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2009/02/19/ext4-como-un-tiro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nuevo tema para la web, espero que definitivo</title>
		<link>http://www.zelofan.net/blog/2009/01/09/nuevo-tema-para-la-web-espero-que-definitivo/</link>
		<comments>http://www.zelofan.net/blog/2009/01/09/nuevo-tema-para-la-web-espero-que-definitivo/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 19:35:30 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[stories]]></category>
		<category><![CDATA[zelofan]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=807</guid>
		<description><![CDATA[El anterior tema sólo ha durado un par de días, no está mal. He visto éste hace unas horas y no he podido resistirme. Prometo no volver a cambiarlo&#8230; hasta el año que viene ;) Actualizado: Las fotos que salían arriba eran las que venían por defecto con el tema de wordpress. Ahora ya está [...]]]></description>
			<content:encoded><![CDATA[<p>El anterior tema sólo ha durado un par de días, no está mal. He visto éste hace unas horas y no he podido resistirme. Prometo no volver a cambiarlo&#8230; hasta el año que viene ;)</p>
<p><ins datetime="2009-01-09T19:40:19+00:00">Actualizado: Las fotos que salían arriba eran las que venían por defecto con el tema de wordpress. Ahora ya está más personalizado, con recortes de fotos de mis viajes.</ins></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2009/01/09/nuevo-tema-para-la-web-espero-que-definitivo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configurar lighttpd para albergar un proyecto con symfony</title>
		<link>http://www.zelofan.net/blog/2008/12/02/configurar-lighttpd-para-albergar-un-proyecto-con-symfony/</link>
		<comments>http://www.zelofan.net/blog/2008/12/02/configurar-lighttpd-para-albergar-un-proyecto-con-symfony/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 17:27:05 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lighttpd]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=733</guid>
		<description><![CDATA[Desde hace un par de meses tengo un pequeño servidor en casa con debian instalado, dedicado básicamente a estar las 24h conectado a internet bajando torrents y como servidor en el que hacer pruebas diversas. Al tener un hardware muy básico (128MB de RAM, procesador ARM9 de 500Mhz), el servidor web debía ser lo más [...]]]></description>
			<content:encoded><![CDATA[<p>Desde hace un par de meses tengo un pequeño servidor en casa con debian instalado, dedicado básicamente a estar las 24h conectado a internet bajando torrents y como servidor en el que hacer pruebas diversas. Al tener un hardware muy básico (128MB de RAM, procesador ARM9 de 500Mhz), el servidor web debía ser lo más ligero posible, por lo que todo el mundo recomendaba lighttpd. Así que me puse manos a la obra, y gracias a apt-get en un momento estaba instalado ;)</p>
<p>El problema vino hace un par de días al querer utilizar este servidor para realizar pruebas con symfony. En casi todos los sitios hablan de qué cambiar en apache, pero no lighttpd, así que tras preguntar a SanGoogle, esto es lo que encontré:</p>
<p><code>server.modules += ( "mod_simple_vhost" , "mod_rewrite" )</p>
<p>$HTTP ["host"] == "jobeet" {<br />
  server.document-root = "/home/sfprojects/jobeet/web"<br />
  server.indexfiles = ( "index.php", "index.html")<br />
  alias.url            = (<br />
      "/sf"           => "/usr/share/php/data/symfony/web/sf"<br />
    )<br />
  server.error-handler-404 = "/index.php"<br />
}<br />
</code> </p>
<p>Como véis, es un código muy sencillo a añadir al archivo de configuración de lighttpd (en debian, /etc/lighttpd/lighttpd.conf). En mi caso, he creado el host jobeet para ir probando el <a href="http://www.symfony-project.org/jobeet/1_2/en/"> nuevo tutorial de 24 días que se está publicando en la web oficial de symfony</a>. Lo primero que necesitamos son los módulos de vhost y rewrite, si no los teníamos anteriormente &#8220;cargados&#8221;. Después simplemente le decimos donde está el directorio raíz del host (en mi caso, en un directorio que he creado en /home para todos los proyectos de symfony llamado sfprojects/ , y dentro de él, en el de nombre &#8220;jobeet&#8221;, en su directorio web/). Y por último, redirigimos el directorio /sf al directorio donde hayamos instalado symfony. En debian, y con la instalación de symfony mediante PEAR, por defecto está en /usr/share/php/data/symfony/web/sf.</p>
<p>Et voilà, reiniciamos lighttpd y ya tenemos el proyecto con symfony funcionando ;)</p>
<p>PD: No olvidar añadir la IP del servidor y el nombre del host, en esta caso &#8220;jobeet&#8221;, a nuestro archivo de hosts local&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2008/12/02/configurar-lighttpd-para-albergar-un-proyecto-con-symfony/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Symfony 1.2.0</title>
		<link>http://www.zelofan.net/blog/2008/12/02/symfony-120/</link>
		<comments>http://www.zelofan.net/blog/2008/12/02/symfony-120/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 15:43:30 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=726</guid>
		<description><![CDATA[Ya está disponible la versión 1.2.0 definitiva de Symfony, tras varios meses de desarrollo y diferentes betas. Mejoras en los formularios, en el generador automático del &#8220;backend&#8221; de administración y mil cosas más, que puedes ver en su web, por ejemplo, en su what&#8217;s new. He ido probando las betas y los cambios respecto a [...]]]></description>
			<content:encoded><![CDATA[<p>Ya está disponible la versión 1.2.0 definitiva de <a href="http://www.symfony-project.com">Symfony</a>, tras varios meses de desarrollo y diferentes betas. Mejoras en los formularios, en el generador automático del &#8220;backend&#8221; de administración y mil cosas más, que puedes ver en su web, por ejemplo, en su <a href="http://www.symfony-project.org/tutorial/1_2/whats-new">what&#8217;s new</a>. </p>
<p>He ido probando las betas y los cambios respecto a 1.0-1.1 son sustanciales, ahora sólo me falta meterle mano a la versión definitiva y ver si han corregido todos los pequeños fallos que tenían en las betas. Espero comentar más cosas (buenas) pronto&#8230; </p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2008/12/02/symfony-120/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Adiós Orange. Se acabó el sufrimiento.</title>
		<link>http://www.zelofan.net/blog/2008/11/27/adios-orange-se-acabo-el-sufrimiento/</link>
		<comments>http://www.zelofan.net/blog/2008/11/27/adios-orange-se-acabo-el-sufrimiento/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 18:35:01 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[orange]]></category>
		<category><![CDATA[stories]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=715</guid>
		<description><![CDATA[24 días sin internet. Sin una sola llamada informándome de nada. Y justo hoy, me llaman para arreglármelo. Lo siento, Orange. Demasiado tarde. Quizás algún día vuelva a probar suerte&#8230; pero, de momento, habéis perdido un cliente más. Y los que perderéis como sigáis así&#8230;.]]></description>
			<content:encoded><![CDATA[<p>24 días sin internet. Sin una sola llamada informándome de nada. Y justo hoy, me llaman para arreglármelo. </p>
<p>Lo siento, Orange. Demasiado tarde. Quizás algún día vuelva a probar suerte&#8230; pero, de momento, habéis perdido un cliente más. Y los que perderéis como sigáis así&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2008/11/27/adios-orange-se-acabo-el-sufrimiento/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Orange &#8211; Telefónica, la historia interminable</title>
		<link>http://www.zelofan.net/blog/2008/11/11/orange-telefonica-la-historia-interminable/</link>
		<comments>http://www.zelofan.net/blog/2008/11/11/orange-telefonica-la-historia-interminable/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 08:33:53 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[orange]]></category>
		<category><![CDATA[stories]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/?p=713</guid>
		<description><![CDATA[Sigo sin internet, escribo esto desde el instituto. Desde el día 4 de noviembre, no tengo teléfono en casa, y, por tanto, tampoco ADSL. Tengo contratado el Todo en 1 de Orange (sin TV, por falta de cobertura) y, sin embargo, sigo dependiendo de Telefónica: hay un cruce de líneas (cuando llamo desde mi fijo [...]]]></description>
			<content:encoded><![CDATA[<p>Sigo sin internet, escribo esto desde el instituto. </p>
<p>Desde el día 4 de noviembre, no tengo teléfono en casa, y, por tanto, tampoco ADSL. Tengo contratado el Todo en 1 de Orange (sin TV, por falta de cobertura) y, sin embargo, sigo dependiendo de Telefónica: hay un cruce de líneas (cuando llamo desde mi fijo a mi móvil, me aparece un número que no es el mío) y, ahora, los técnicos de Orange tienen que &#8220;quedar&#8221; con los de Telefónica para ir a la centralita que me corresponde y comprobar-arreglar el fallo.</p>
<p>Al final, como siempre, dependiendo de Telefónica. Cuando ellos quieran, irán a la centralita. Y yo, mientras, 8 días ya sin internet. Ayer volví a llamar (otros 20 minutitos pagando a un 902) a Orange e informarme de cómo iban los cosas. Principalmente, para saber si me proponían alguna solución y, en su defecto, saber cuándo podía darme de baja sin penalización por el compromiso de permanencia. La única solución que me dieron fue una tarifa plana para utilizar con la línea de teléfono mientras no tuviera ADSL&#8230; pero como tampoco tengo línea, no me vale&#8230; Que lo único que podía hacer era esperar, vamos. Lo de darme un módem 3G, ni de coña.</p>
<p>Una única cosa positiva. Según parece, si en 10 días desde la apertura de la avería no me la han solucionado, puedo darme de baja sin penalización. ¿Bienvenido, Vodafone?</p>
<p>Seguiré informando&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2008/11/11/orange-telefonica-la-historia-interminable/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Sin internet</title>
		<link>http://www.zelofan.net/blog/2008/11/05/sin-internet/</link>
		<comments>http://www.zelofan.net/blog/2008/11/05/sin-internet/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 18:47:50 +0000</pubDate>
		<dc:creator>ramses</dc:creator>
				<category><![CDATA[Stories]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[orange]]></category>
		<category><![CDATA[stories]]></category>

		<guid isPermaLink="false">http://www.zelofan.net/blog/2008/11/05/sin-internet/</guid>
		<description><![CDATA[Pues eso, escribiendo desde el iphone&#8230;]]></description>
			<content:encoded><![CDATA[<p>Pues eso, escribiendo desde el iphone&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zelofan.net/blog/2008/11/05/sin-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

