<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://frontseed.com"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Front Seed Labs</title>
 <link>http://frontseed.com</link>
 <description></description>
 <language>en</language>
<item>
 <title>Nginx configuration for Drupal sites</title>
 <link>http://frontseed.com/entry/nginx-configuration-drupal-sites</link>
 <description>&lt;p&gt;I have created a preferred configuration for hosting Drupal sites on the excellent nginx web server. I tend to prefer nginx over Lighttpd and/or Apache for at least over a year now and I&#039;m extremely happy with its reliability and performance.&lt;/p&gt;

&lt;p&gt;Apart from configuring a little more and getting used to the fact that no run-time configurations are available through .htaccess files, nginx with php-fpm is really a viable option for hosting Drupal sites.&lt;/p&gt;

&lt;p&gt;&#039;Nuff said, you can head over to &lt;a href=&quot;https://github.com/attila/nginx_drupal&quot;&gt;&lt;strong&gt;GitHub&lt;/strong&gt;&lt;/a&gt; to check out my configuration. The files have many smart ideas taken from &lt;a href=&quot;https://github.com/yhager&quot;&gt;&lt;em&gt;yhager&lt;/em&gt;&lt;/a&gt;&#039;s nginx config, however I added more features and tailored the configuration for my needs.&lt;/p&gt;

&lt;p&gt;It has the following features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multisite Drupal installations&lt;/li&gt;
&lt;li&gt;Boost module support&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://drupal.org/project/advagg&quot;&gt;Advanced CSS/JS Aggregation&lt;/a&gt; support&lt;/li&gt;
&lt;li&gt;Supports fake CNAME-based cdns with imagecache and advagg (see &lt;a href=&quot;http://frontseed.com/entry/setting-cookieless-fake-cdns-drupal&quot;&gt;previous post about null-session support on fake CDNs&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Proper MIME types for @font-face fonts&lt;/li&gt;
&lt;li&gt;An overall config file structure to minimize per-vhost file volume&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Anyway feel free to add patches or comments: &lt;a href=&quot;https://github.com/attila/nginx_drupal&quot;&gt;&lt;strong&gt;Drupal hosting on nginx&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
</description>
 <comments>http://frontseed.com/entry/nginx-configuration-drupal-sites#comments</comments>
 <category domain="http://frontseed.com/tags/configuration">configuration</category>
 <category domain="http://frontseed.com/tags/drupal">Drupal</category>
 <category domain="http://frontseed.com/tags/nginx">Nginx</category>
 <category domain="http://frontseed.com/tags/php-fpm">php-fpm</category>
 <pubDate>Sat, 26 Mar 2011 17:44:25 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">30 at http://frontseed.com</guid>
</item>
<item>
 <title>Setting up cookieless fake CDNs for Drupal</title>
 <link>http://frontseed.com/entry/setting-cookieless-fake-cdns-drupal</link>
 <description>&lt;p&gt;So you want your Drupal site perform as fast as possible and you have set up the CDN module and patched imagecache and everything is working fine. Then you realize that any asynchronously generated asset - images, compressed stylesheets, etc - will send a session cookie to your visitors.&lt;/p&gt;

&lt;p&gt;The very promising &lt;a href=&quot;http://drupal.org/project/advagg&quot;&gt;Advanced CSS/JS Aggregation&lt;/a&gt; and &lt;a href=&quot;http://drupal.org/project/imagecache&quot;&gt;ImageCache&lt;/a&gt; both handle requests in a unique way: if the requested resource is not generated yet, the request runs through Drupal, creates the resource and place it in the path exactly where the request points to. This way, subsequent requests do not need to go through Drupal and PHP again, they can be served as a static resource.&lt;/p&gt;

&lt;p&gt;However since the first request runs through Drupal, it will start a session (Drupal 6 by default starts sessions for anonymous users) This is okay if you use a single domain to serve files from. Things get annoying when you start using alternate host names to speed up page loading times, and you realize that these precious alternate host names start sending out session cookies to your visitors, and you are basically doubling (or with 3 cname domains, that is quadrupling) your session rows if a visitor happens to hit a static resource for the first time.&lt;/p&gt;

&lt;p&gt;CDNs - even if they are just fake CNAME records pointing to the same webroot - should operate cookieless to keep the http request headers as short as possible for subsequent requests.&lt;/p&gt;

&lt;p&gt;One could (eliminate anonymous sessions)[http://2bits.com/articles/reducing-server-load-eliminating-anonymous-sessions-drupal-6x.html] easily from the entire site, but that might not be your cup of tea because anonymous sessions are needed so much say on an Ubercart site to track cart contents.&lt;/p&gt;

&lt;p&gt;My solution is to use an alternate session handler which in fact does not handle sessions at all. Configure this session handler to be fired only at your cdn domains and you&#039;re set to go.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://frontseed.com/entry/setting-cookieless-fake-cdns-drupal&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://frontseed.com/entry/setting-cookieless-fake-cdns-drupal#comments</comments>
 <category domain="http://frontseed.com/tags/cdn">CDN</category>
 <category domain="http://frontseed.com/tags/drupal">Drupal</category>
 <category domain="http://frontseed.com/tags/imagecache">Imagecache</category>
 <category domain="http://frontseed.com/tags/session">session</category>
 <pubDate>Fri, 11 Mar 2011 23:06:35 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">28 at http://frontseed.com</guid>
</item>
<item>
 <title>Using Drupal Imagecache with Lighttpd proxied Apache</title>
 <link>http://frontseed.com/entry/using-drupal-imagecache-lighttpd-proxied-apache</link>
 <description>&lt;p&gt;Using Lighttpd as a proxy for Apache is a popular solution to achieve smaller web server memory footprint and to speed up websites. However things can get messy when it comes to Drupal and the brilliant Imagecache module. Imagecache transforms images using presets and then caches them.&lt;/p&gt;

&lt;p&gt;An imagecache url is something like: &lt;code&gt;http://domain.tld/sites/default/files/imagecache/presetname/photo.jpg&lt;/code&gt;
This will take the the image placed at &lt;code&gt;sites/default/files/photo.jpg&lt;/code&gt; and transforms it according to &lt;code&gt;presetname&lt;/code&gt;. After succesful operation the image will be available as a static file at &lt;code&gt;sites/default/files/imagecache/presetname/photo.jpg&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;No need to say, this functionality breaks when the frontend web server only forwards requests to php files so imagecache images won&#039;t show up and will not be generated.&lt;/p&gt;

&lt;p&gt;One solution is: set up a separate subdomain to serve these images and redirect all imagecache images to this subdomain. This needs some simple LUA scripting, Lighttpd will forward an imagecache url if it hasn&#039;t created yet, and will serve it directly if it&#039;s already there.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://frontseed.com/entry/using-drupal-imagecache-lighttpd-proxied-apache&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://frontseed.com/entry/using-drupal-imagecache-lighttpd-proxied-apache#comments</comments>
 <category domain="http://frontseed.com/tags/apache">Apache</category>
 <category domain="http://frontseed.com/tags/drupal">Drupal</category>
 <category domain="http://frontseed.com/tags/imagecache">Imagecache</category>
 <category domain="http://frontseed.com/tags/lighttpd">Lighttpd</category>
 <pubDate>Wed, 10 Nov 2010 14:26:26 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">29 at http://frontseed.com</guid>
</item>
<item>
 <title>Enable frambeuffer on Ubuntu Karmic Koala using grub2</title>
 <link>http://frontseed.com/entry/enable-frambeuffer-ubuntu-karmic-koala-using-grub2</link>
 <description>&lt;p&gt;I usually develop and test my webpages on various VirtualBox virtual machines and since I am doing a lot of console work I use a framebuffer which enables using larger resolutions than the default console. 
Until now I was using Ubuntu 8.04 LTS virtual machines, but recently I upgraded to 9.10.
Ubuntu 9.10 (Karmic Koala) is using grub2 so the simple adding of &lt;code&gt;vga=791&lt;/code&gt; or similar value to boot options won&#039;t work. Here&#039;s how to enable the framebuffer on virtual consoles:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://frontseed.com/entry/enable-frambeuffer-ubuntu-karmic-koala-using-grub2&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://frontseed.com/entry/enable-frambeuffer-ubuntu-karmic-koala-using-grub2#comments</comments>
 <category domain="http://frontseed.com/tags/framebuffer">framebuffer</category>
 <category domain="http://frontseed.com/tags/grub2">grub2</category>
 <category domain="http://frontseed.com/tags/karmic-koala">Karmic Koala</category>
 <category domain="http://frontseed.com/tags/ubuntu">Ubuntu</category>
 <pubDate>Sat, 16 Jan 2010 12:59:27 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">25 at http://frontseed.com</guid>
</item>
<item>
 <title>Installing Lighttpd with mod_deflate on Ubuntu Hardy</title>
 <link>http://frontseed.com/entry/installing-lighttpd-moddeflate-ubuntu-hardy</link>
 <description>&lt;p&gt;Meet &lt;a href=&quot;http://redmine.lighttpd.net/projects/lighttpd&quot;&gt;Lighttpd&lt;/a&gt;: it is a fast, small footprint and higly configurable webserver with advanced features. It&#039;s often a common alternative to Apache. At the time of writing the latest versions from the 1.4.x branch is considered stable while &lt;a href=&quot;http://redmine.lighttpd.net/versions/show/3&quot;&gt;Lighttpd 1.5.0&lt;/a&gt; is an ongoing work with new features.&lt;/p&gt;

&lt;p&gt;One new feature is the &lt;a href=&quot;http://redmine.lighttpd.net/projects/lighttpd/wiki/Mod_Deflate&quot;&gt;mod_deflate&lt;/a&gt; server module which is a modified version of &lt;a href=&quot;http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ModCompress&quot;&gt;mod_compress&lt;/a&gt; shipped with 1.4.x versions. mod_deflate can compress any output from lighttpd static or dynamic - that is, lighttpd can compress the output of dynamically generated pages with this.&lt;/p&gt;

&lt;p&gt;Websites with lots of dynamically generated content receive significant bandwidth saving with dynamic output compression, and visitors of those websites benefit faster page loading times.&lt;/p&gt;

&lt;p&gt;There are patches available which makes building a version of Lighttpd 1.4.x from source which includes mod_deflate.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://frontseed.com/entry/installing-lighttpd-moddeflate-ubuntu-hardy&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://frontseed.com/entry/installing-lighttpd-moddeflate-ubuntu-hardy#comments</comments>
 <category domain="http://frontseed.com/tags/hardy">Hardy</category>
 <category domain="http://frontseed.com/tags/lighttpd">Lighttpd</category>
 <category domain="http://frontseed.com/tags/moddeflate">mod_deflate</category>
 <category domain="http://frontseed.com/tags/ubuntu">Ubuntu</category>
 <pubDate>Sun, 16 Aug 2009 08:16:50 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">26 at http://frontseed.com</guid>
</item>
<item>
 <title>Using Bazaar for web development on Ubuntu Hardy</title>
 <link>http://frontseed.com/entry/using-bazaar-web-development-ubuntu-hardy</link>
 <description>&lt;p&gt;&lt;a href=&quot;http://bazaar-vcs.org/&quot;&gt;Bazaar&lt;/a&gt; is a nice version control system for me, it allows to keep my project directory versioned &lt;a href=&quot;http://bazaar-vcs.org/BazaarForWebDevs&quot; title=&quot;Bazaar in five minutes for web devs&quot;&gt;without much fiddling&lt;/a&gt; with the vcs-savvy stuff.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://frontseed.com/entry/using-bazaar-web-development-ubuntu-hardy&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://frontseed.com/entry/using-bazaar-web-development-ubuntu-hardy#comments</comments>
 <category domain="http://frontseed.com/tags/bzr">bzr</category>
 <category domain="http://frontseed.com/tags/development">Development</category>
 <category domain="http://frontseed.com/tags/hardy">Hardy</category>
 <category domain="http://frontseed.com/tags/ubuntu">Ubuntu</category>
 <pubDate>Sat, 15 Aug 2009 11:13:09 +0000</pubDate>
 <dc:creator>Attila</dc:creator>
 <guid isPermaLink="false">27 at http://frontseed.com</guid>
</item>
</channel>
</rss>
