<?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>Hoketronics - Mike Hochanadel &#187; Apache</title>
	<atom:link href="http://hoketronics.net/tag/apache/feed/" rel="self" type="application/rss+xml" />
	<link>http://hoketronics.net</link>
	<description>Spiraled out of the Mind of Mike</description>
	<lastBuildDate>Tue, 16 Aug 2011 03:50:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Subversion Install Swankiness Part I</title>
		<link>http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/</link>
		<comments>http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 17:42:56 +0000</pubDate>
		<dc:creator>mike.hochanadel</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Revision Control]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[revision control]]></category>
		<category><![CDATA[Subversion]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://hoketronics.net/?p=36</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/' addthis:title='&#60;span id=&#34;title-refEl-36&#34;&#62;Subversion Install Swankiness Part I&#60;/span&#62; '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Here we go with the newly decided first part of my Subversion install series.  I decided to break it up into smaller chunks of articles as the first part really is the installation/setup part and the second is the integration/deploying part.  So with this first part we're gonna talk about downloading, verification, repository setup, and [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/' addthis:title='&#60;span id=&#34;title-refEl-36&#34;&#62;Subversion Install Swankiness Part I&#60;/span&#62; ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div id="post-refEl-36"><div class="addthis_toolbox addthis_default_style " addthis:url='http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/' addthis:title='&lt;span id=&quot;title-refEl-36&quot;&gt;Subversion Install Swankiness Part I&lt;/span&gt; '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p>Here we go with the newly decided first part of my Subversion install series.  I decided to break it up into smaller chunks of articles as the first part really is the installation/setup part and the second is the integration/deploying part.  So with this first part we're gonna talk about downloading, verification, repository setup, and Apache integration.  I'll make it short and sweet as possible but grab a cup of joe so we can get started.</p>
<p>When figuring out how I should download Subversion, I weighed many options.  I could either grab the source from their <a href="http://subversion.tigris.org">website at Tigris</a> or install from Ubuntu's repository.  The hardcore geek in me wanted to compile from source, but I really wanted to roll out the software quick so I can focus on the blog code.  Also  updates trickle down from Ubuntu with relative automation, so I went with acquiring the binary from Ubuntu.  It really makes sense to knock out the binaries for tools surrounding a project and focus on source for project related code.  Why waste your time setting up a utility when it's the poject you should be working on?</p>
<p><span id="more-36"></span></p>
<p>After some research, I decided to follow the steps <a title="Install Subversion with Web Access on Ubuntu" href="http://www.howtogeek.com/howto/ubuntu/install-subversion-with-web-access-on-ubuntu/" target="_blank">provided by How-To Geek</a>.  I updated my repository and installed Subversion.  After the packages were downloaded, unpacked, and installed, I verified that it had indeed been setup on my system.  Here's how it happened:</p>
<p><code>hokey@tardis:~$ sudo apt-get install subversion<br />
Reading package lists... Done<br />
Building dependency tree<br />
Reading state information... Done<br />
The following extra packages will be installed:<br />
libneon26 libsvn1<br />
Suggested packages:<br />
subversion-tools db4.4-util<br />
The following NEW packages will be installed:<br />
libneon26 libsvn1 subversion<br />
0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.<br />
Need to get 964kB of archives.<br />
After unpacking 5128kB of additional disk space will be used.<br />
Do you want to continue [Y/n]?</code></p>
<p><code>hokey@tardis:~$ svn --version<br />
svn, version 1.4.4 (r25188)<br />
compiled Sep 28 2007, 10:50:44</code></p>
<p><code>Copyright (C) 2000-2006 CollabNet.<br />
Subversion is open source software, see http://subversion.tigris.org/<br />
This product includes software developed by CollabNet (http://www.Collab.Net/).</code></p>
<p><code>The following repository access (RA) modules are available:</code></p>
<p><code>* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.<br />
- handles 'http' scheme<br />
- handles 'https' scheme<br />
* ra_svn : Module for accessing a repository using the svn network protocol.<br />
- handles 'svn' scheme<br />
* ra_local : Module for accessing a repository on local disk.<br />
- handles 'file' scheme</code></p>
<p>So after verification it was time to decide on where to create my new repository and setup web access.  Now with anything Linux-wise, you are pretty much left to your own notions as to where to drop a directory for installs.  Companies like Adobe use <code>/opt</code> for their application installs and some programs use <code>/var</code> to store data separate from program files.  I figured <code>/var/svn</code> was reasonable enough so I had at it, creating the directory and using the Subversion command <code>create</code> to setup the files:</p>
<p><code>hokey@tardis:/var$ sudo mkdir svn</code></p>
<p><code>hokey@tardis:/var$ sudo svnadmin create /var/svn/</code></p>
<p><code>hokey@tardis:/var$ cd svn<br />
hokey@tardis:/var/svn$ ls -lat<br />
total 36<br />
drwxr-xr-x  7 root root 4096 2008-11-07 17:54 .<br />
drwxr-xr-x  2 root root 4096 2008-11-07 17:54 conf<br />
drwxr-xr-x  2 root root 4096 2008-11-07 17:54 dav<br />
drwxr-sr-x  5 root root 4096 2008-11-07 17:54 db<br />
-r--r--r--  1 root root    2 2008-11-07 17:54 format<br />
drwxr-xr-x  2 root root 4096 2008-11-07 17:54 hooks<br />
drwxr-xr-x  2 root root 4096 2008-11-07 17:54 locks<br />
-rw-r--r--  1 root root  229 2008-11-07 17:54 README.txt<br />
drwxr-xr-x 15 root root 4096 2008-11-07 17:47 ..</code></p>
<p>Now that the repository was created, I needed to figure out how to get web access up.  Welp, thanks to the How-To Geek and the original coders of the module, there was one available to tie it all together.  Using <code>libapache2_svn</code>, a client can connect via Apache to a Subversion repository and write to it using DAV.  This was a perfect setup, even though the security isn't the greatest, for me to develop locally before deploying my sites to my host.  So here's how I did it:</p>
<p><code>hokey@tardis:/etc/apache2/mods-available$ sudo apt-get install libapache2-svn<br />
Reading package lists... Done<br />
Building dependency tree<br />
Reading state information... Done<br />
Suggested packages:<br />
db4.4-util<br />
The following NEW packages will be installed:<br />
libapache2-svn<br />
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.<br />
Need to get 136kB of archives.<br />
After unpacking 344kB of additional disk space will be used.<br />
Get:1 http://us.archive.ubuntu.com gutsy/main libapache2-svn 1.4.4dfsg1-1ubuntu3 [136kB]<br />
Fetched 136kB in 1s (126kB/s)<br />
Selecting previously deselected package libapache2-svn.<br />
(Reading database ... 30761 files and directories currently installed.)<br />
Unpacking libapache2-svn (from .../libapache2-svn_1.4.4dfsg1-1ubuntu3_i386.deb) ...<br />
Setting up libapache2-svn (1.4.4dfsg1-1ubuntu3) ...<br />
Enabling dav as a dependency<br />
Module dav installed; run /etc/init.d/apache2 force-reload to enable.<br />
Module dav_svn installed; run /etc/init.d/apache2 force-reload to enable.</code></p>
<p>After I installed the module, I had to edit the <code>dav_svn.conf</code> file to point to my settings.  Following the instructions, I removed the comments for configuration which included:</p>
<ul>
<li>Setting the repository location:<code>Location /var/svn</code></li>
<li>Uncommenting <code>DAV svn</code></li>
<li>Setting the SVNPath: <code>SVNPath /var/svn</code></li>
<li>And ucommenting the authority settings:<br />
<code>AuthType Basic<br />
AuthName "Subversion Repository"<br />
AuthUserFile <em>XXXXXX</em><br />
Require valid-user</code></li>
</ul>
<p>I then setup the authentication:<br />
<code>hokey@tardis:/etc/apache2/mods-enabled$sudo htpasswd -cm /etc/apache2/dav_svn.passwd hokey<br />
New password:<br />
Re-type new password:<br />
Adding password for user hokey</code></p>
<p>After doing a quick restart: <code>hokey@tardis:/etc/apache2/mods-enabled$ sudo apache2ctl restart</code>, I got this:</p>
<div id="attachment_37" class="wp-caption aligncenter" style="width: 478px"><a href="http://hoketronics.net/~/html/hoketronics.net/wp-content/uploads/2008/11/subversionwrong.png"><img class="size-full wp-image-37" title="subversionwrong" src="http://hoketronics.net/~/html/hoketronics.net/wp-content/uploads/2008/11/subversionwrong.png" alt="The wrong Location" width="468" height="374" /></a><p class="wp-caption-text">The wrong Location</p></div>
<p>What was wrong?  I set the Location for Apache as <code>/var/svn</code>.  What I was shooting for was to have <code>/svn</code> as the root.  Doh!  The SVNPath already tells Apache where to look for the repository.  The Location tag and attribute in the configuration tell Apache where to display it on the web server.  So I made the change and restarted.   After testing authentication, I was ready to rock.  Stay tuned for Part 2 of my swankiness as I look to integrate Subversion with a project and deploy it back to my host.</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/' addthis:title='&lt;span id=&quot;title-refEl-36&quot;&gt;Subversion Install Swankiness Part I&lt;/span&gt; ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div></div>]]></content:encoded>
			<wfw:commentRss>http://hoketronics.net/2008/11/08/subversion-install-swankiness-part-i/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Xampp&#039;ed Up But Turned Off To Portability</title>
		<link>http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/</link>
		<comments>http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 19:03:59 +0000</pubDate>
		<dc:creator>mike.hochanadel</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[LAMP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://hoketronics.net/?p=11</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/' addthis:title='&#60;span id=&#34;title-refEl-11&#34;&#62;Xampp&#039;ed Up But Turned Off To Portability&#60;/span&#62; '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>Before I rolled out the relaunch, I spent a good month trying to figure out the right kind of development environment for tools the I had available.  I have three laptops but all of the batteries are toast and the motherboard on one of them has gone the way of the dodo.  I convinced myself [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/' addthis:title='&#60;span id=&#34;title-refEl-11&#34;&#62;Xampp&#039;ed Up But Turned Off To Portability&#60;/span&#62; ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div id="post-refEl-11"><div class="addthis_toolbox addthis_default_style " addthis:url='http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/' addthis:title='&lt;span id=&quot;title-refEl-11&quot;&gt;Xampp&#039;ed Up But Turned Off To Portability&lt;/span&gt; '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div><p>Before I rolled out the relaunch, I spent a good month trying to figure out the right kind of development environment for tools the I had available.  I have three laptops but all of the batteries are toast and the motherboard on one of them has gone the way of the dodo.  I convinced myself to develop exclusively off of a big ole Western Digital 80 GB Passport USB external drive.  First step done.  After doing some research I decided on XAMMP to drive my environment.  It was nice but there were some issues.</p>
<p>My real focus for this development environment setup was to be able to plug in the hard drive and code directly off of it.  I work off of multiple platforms at home and at the office.  Almost all of the apps do not have a single application to launch.  I already run some portable apps that support clients in Windows, Mac, and Linux flavors, like <a title="KeePass Password Manager" href="http://keepass.info/" target="_blank">KeePass</a>.  XAMMP advertised clients for each platform so I decided to give it a try.</p>
<p><a title="Xammp" href="http://www.apachefriends.org/en/xampp.html" target="_blank">XAMMP</a> is a fully integrated web application development server.  The purpose of XAMMP is to roll out a fully workable, out of the box *AMP stack.  The packages include an Apache2 server, PHP version 4 or 5, MySQL 5, and a torrent of management utilities and open soruce libraries/modules.  There are some differences between platforms for the package set, however.  The beauty behind it is that you can pick and choose what you want and start work within minutes.</p>
<p>At first, I wanted to setup all of the platform packages on the flash drive.  Due to the desire for cleanliness on the drive, however, I tried to install the software locally on all of my workstations.  Most of my time is spent on these machines anyway.  Linux was the easiest to turn out, mainly because it just dropped everything into the '/opt' directory.  I could change the doc and database links and move forward from there.  Windows was also a snap as I could modify configuration and turn services on and off with the included XAMMP control panel.  The Mac OS X client was not so easy.</p>
<p>The installer package for the Mac does not allow for choice.  It scans you computer to see if it's okay to run on and then drops it straight to the Applications folder.  The folder it installs to is not entirely encapsulated.  When the configuration points to the database files on the flash drive,  the service will crash upon startup.  I've already been exposed to issues on lock file management on Mac OS X Server, and the workaround didn't work for this issue.  The Apple puts the lock file in a directory other than the MySQL default setup.  When I symbolically linked the lock file, the database would start up.  This was not working with XAMMP.</p>
<p>After spending some small time here and there for about two weeks on it, I ended up just letting it go.  Attempts to find out on <a title="Portable?" href="http://www.apachefriends.org/f/viewtopic.php?t=30006&amp;highlight=portable" target="_blank">their forums page led me nowhere</a>.  Also in my research on this topic, I discovered a <a title="Portable Apps Xammp" href="http://portableapps.com/apps/development/xampp" target="_blank">Portable Apps version of Xammp</a> but it is Windows only.  Not much help there.  Maybe one day the devs on the project will look for better portable support.  Until then, I'm focusing on version management and working off my lil server in my apartment.</p>
<p>I'm still coming to terms with getting distracted on small setup roadblocks.  I really didn't need to waste the time figuring this out when what I really needed to do was to turn out this blog and other projects.  Struggling with Xammp taught me that sometimes the perfect environment will trickle down from actually working on things first rather than focusing on a perfect setup for work that hasn't started yet.  Plus it's alot more fun when you actually have projects in progress instead of dreaming of working on projects.</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/' addthis:title='&lt;span id=&quot;title-refEl-11&quot;&gt;Xampp&#039;ed Up But Turned Off To Portability&lt;/span&gt; ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div></div>]]></content:encoded>
			<wfw:commentRss>http://hoketronics.net/2008/10/24/xampped-up-but-turned-off-to-portability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

