All 1 entries tagged Apache
View all 7 entries tagged Apache on Warwick Blogs | View entries tagged Apache at Technorati | There are no images tagged Apache on this blog
June 16, 2007
Is the Enterprise ready for Open–Source?
If you look at the market share these days for internet web servers it’s clear what the winning Web Server is… Apache with a market share of about 56% currently according to Netcraft while Microsoft’s IIS comes second with 31.59%. Interestingly if you compared these figures in March 2006, Microsoft were down on about 18% and Apache had 75% of the market. Some of that is down to IIS 6.0 (Windows 2003) being noticeably more secure than IIS 5.0 (Windows 2000) but some of it may be down to the increase in availability of shared hosting solutions based on Windows not Linux. Nonetheless the principle development stack of dynamic websites today is the LAMP stack of programs – Linux, Apache, MySQL and PHP. All of these are available for free and all of them are used widely by sites like Wikipedia, Google and Amazon.
What I’ve been searching for is a content management system with an integrated Wiki for a side project I’m working on for my secondary “day job”. Of course that lead me down a couple of paths in the end… the high-cost, high-end solution and the Open Source solutions. At the end of the “Evaluation” phase I’d come up with a few systems that looked plausible…- Alfresco which was started by the guys that originally wrote one of the early big players, Documentum. Based on Java, PHP, Apache Tomcat as the JSP server and any database you like behind the scenes… I’m using MySQL to keep things common. Available free or with a support contract.
- DotNetNuke based on VB.NET and Microsoft SQL Server and must of course be served from IIS for ASP.NET 2.0 support.
- Jadu Intranet 2.0 is a commercial package that is built on PHP, Apache Tomcat and either MySQL or you can use Oracle or SQL Server should you so wish.
- Jahia uses Java, which means Tomcat again, with MySQL behind it but you can use SQL Server, Oracle or others.
- RedDot is a propritory solution, built on Windows only with support for using just about any language under the sun in the content, but server from IIS with Oracle, DB2 or SQL Server behind the scenes.
- MediaWiki is the engine behind WikiPedia and while it’s not a content management system as such, Novell have used it as one successfully, it’s also probably the most developed Wiki engine in the world too built again on PHP and MySQL.
So those are the contenders and the only ones I can’t get samples of are RedDot and Jadu as they are commercial and rather pricey with it.
So the big question after all this is whether the open source solutions can offer the same as the commercial ones. It certainly seems that Jahia and Alfresco offer just what is needed in a CMS from an Open Source but supported solution.
If you look at where Apache and IIS are used, you find that the top companies, the Fortune 100 companies are where IIS is more popular. It stands to reason, they run Windows anyway and they have more than enough licences in their site licence to drop a couple more on their Intranet hosting. Large companies also have security implications to consider, not DoS attacks, but who can see what information. IIS allows authentication against Active Directory, Microsoft SQL server also allows authentication against Active Directory. While you can do LDAP authentication with Apache it’s a bit of a fudge and MySQL would be reliant on specific servers authenticating against each other. What this really means is that a Windows host is needed so with that in mind my host environment is a Windows 2003 SP2 (not R2) server fully patched.
So far I’ve installed Jahia and MediaWiki on a Server running:- Active Directory/DNS/DHCP
- IIS 6.0
- MySQL 5.0.24
- PHP 5.2.3
- Java SDK 6.0.1
I have to confess I had issues with everything to start with. I began with MediaWiki. I could not get things working for love, money and I even tried seduction. I was trying to use MySQL 5.0.41 and a cryptic note I eventually found told me that there is a problem with MySQL beyond version 5.0.24 when hosted on Windows. I have yet to find out what the problem is, but it did worry me because I tend to use the latest version of any software if I can.
Installing MySQL under Windows is a breeze, I simply set it up to run as a service and used all the defaults. It went really well up to this point and I was totally impressed with the improvement in installations give that the though of compiling source code filled me with dread, I’m an administrator not a coder.
Next up came PHP 5.2.3. Now a search of MediaWiki’s installation instructions showed me thatin actual fact there were a few potential issues if I wanted to serve with IIS. However it seemed that the guide had been written and not many people had bothered to correct it here and there, just appending notes rather than doing a full rewrite. This means I got completely lost. The PHP installation could be better. I opted for a CGI/IIS Installation, but despite this I still had to:- Create Sessiondata and Uploadtemp folders that were not associated with the user account I was downloading to
- Edit php.ini to turn off forced cgi redirects.
Both of these tasks could easily be done by the install process, but they aren’t. On the plus side if you select the add ins during install (like the MySQL driver) then you can save finding which lines to comment in to support your database.
Now we come to installing mediawiki. I haven’t worked out how to configure mediawiki so I can use
http://mediawiki.server/
at present if I try and change it from the URL
http://server/
using an IIS host header I get some nasty things happening and that scares me. Learning some PHP here so I know what I’m telling it is what’s going to be needed. You can see my install steps here where steps 2.1 through 2.3 indicate how I did the install. I didn’t like to get rid of all the rest of the data.
So we come to Jahia. Jahia runs on Java, which has necessitated the installation of a Java engine and Apache Tomcat to host it. I’m reliably informed that by adding the isapi_redirect.dll file to IIS I can use that to serve my Java applications but I haven’t gotten that far just yet. The first time I installed the wrong version of Java, having picked the Enterprise edition which I assumed would be the same but more fully featured. I was wrong.
Jahia requires you to add a path to your Environment Variables in windows in order to function and because I had the wrong version of the Java SDK this caused all manner of problems. With the right version however Tomcat, Java, MySQL and more all play well together. I had to create the MySQL database and user manaually however because Jahia’s generally good install routine couldn’t do this automatically. In use Jahia seems very neat and presentable but I feel I should give my poor (256Mb RAM) server some more to play in, because it’s really beginning to struggle now. I have also managed to get Alfresco to install on the box, but again this needs Tomcat and more and I haven’t gotten that far. Again you have to configure your database yourself.
Opensource Software clearly can offer what the enterprise needs but there are penalties. As IIS cannot server Java natively the fudge of running TomCat as well places extra load on the box. MySQL works perfectly well as a database and for basic use seems to be an equal of SQL Server, though SQL Server wins by miles in terms of ease of use with the Database manager application. PHP needs some install work done on it still in order to have things auto configure on installation, but otherwise works fine.
Web applications are a new area for me and it’s only one day I’ve been properly working on them. It has to be said though, if this is what they can offer someone who doesn’t know too much about them, then Open Source has a bright future. It still needs some tweaks to get the ease of use up with a Windows or Mac OS.X native coded application but it’s not so far away and the eventual end user experience is as good with any of them.
Christopher Hinds
Please wait - comments are loading

Loading…

