Chapter 10: Web Interoperability

Overview

Nearly all organizations today operate an internal intranet, and many also maintain a presence on external Internet websites. Websites can be hosted on both Linux and Windows servers. And web browsers can be found on both Linux and Windows clients . Well-designed websites should work with any web browser software. And ideally , we should be able to host our websites on servers running the operating system of our choice. For simple sites, that's easy enough to do. But in the real world, certain popular technologies for creating web applications on the server are considered standard in the Linux server world. And certain other technologies are popular in the Windows world.

Depending on what your needs are at any given time, you might be challenged with trying to make "the other guy's" web application work. That is, you may have a Linux-based web server, but that doesn't mean you won't find yourself with web developers who have Windows skills. Or you may have a Windows-based web server and encounter a great piece of free web application software that would be perfect for your needs but it's designed for Linux.

In this chapter, we'll show you how to keep your websites friendly to both Linux and Windows clients. That's web browser interoperability. And we'll also show you how to run Windows web applications on Linux and Linux web applications on Windows. That's web server interoperability. Let's look at each of these a little more closely. Then we'll dig in and achieve both goals.

Web browser interoperability This is always an issue in any environment containing both Windows and Linux clients. Today, fortunately, incompatibilities between the major browsers are few. Most such problems are caused by the use of proprietary file formats, such as Macro-media's Flash ( .swf ) files, that are not open standards. (In some cases, limited access to the format specification is available, but usually under terms that prevent those who read it from writing compatible open -source players.) We'll provide pointers to resources that cover how best to cope with these nonstandard but popular file formats in detail.

Web server interoperability This becomes an issue when trying to host on one server operating system web content originally intended for the other. Simple web pages, images, and so on are easy to migrate from one platform to the other, although there are issues here that we'll explore in the section titled "Static Website Interoperability."

But things get truly interesting when we want to run Web applications intended for one operating system on the other. Windows web developers, broadly speaking, are used to writing Active Server Pages (ASP) scripts (in some cases, in the newer ASP.NET style). And Linux web developers, though they also have other choices, are most often experienced with PHP Hypertext Preprocessor (PHP) scripts. This can cause a problem when developers with expertise on one platform are asked to present their content on another.

The good news is that it's possible to host many, though not all, Active Server Pages and ASP.NET applications on Linux. And PHP scripts can certainly be hosted on Windows. Though this is not a programming book, as the system administrator you will likely be asked to solve this problem by creating an environment that allows developers in your organization to work in their preferred scripting language on management's preferred server operating system. And in this chapter, we'll show you how to configure web servers to host web content originally written for the other operating system.

We'll begin with a quick review of the Web's workings. Even though this might be familiar ground, it's good to ensure we're all on the same page. Next we'll move into web browser interoperability concerns and then spend most of the chapter discussing the meatier subject of web server interoperability.

Before we get too far along in this chapter, let's put up a red-flag warning. That is, dealing with web pages is often pretty geeky , specialized, web-propeller-head stuff. We've done our level best to try to de-geekify this chapter and remove as many of the "programming" aspects as possible and try to get to the heart of the administrative issues. However, if possible, try to keep your head above water when the programming acronyms fly. These are important to understandas you'll likely be the person taking the stuff the web programmer gives you and trying to make it happen. Again, this chapter isn't exactly like all the others. You'll see we've got lots of buzzwords , acronyms, and incantations like CLI, C#, ASP.NET, Mono, .NET, Java, VB.NET, PHP, ASP, IIS, MySQL, and more and more and more. But at the end, you'll be glad you tackled this chapter and mastered them.

image from book
Client and Server Choices and Assumptions for Windows and Linux

There are lots of web server and web browser programs in the world. For this chapter, we're going to make a handful of basic assumptions to keep things simple. Let's start with web servers.

The typical Linux web server runs the Apache web server software. Apache is currently home to more websites than any other software in the world. IIS is the second most popular web server in the world overall. These statistics are according to the Netcraft Server Survey found at http://news.netcraft.com/archives/web_server_survey.html .

A typical Windows web server could also run Apache, but most Windows administrators choose to run what's in the boxMicrosoft's Internet Information Server (IIS), which we first saw in Chapter 6.

As for Web browsers, we'll be using Microsoft's Internet Explorer, on the Windows side, and Firefox, on the Linux side. Firefox, of course, can also be run on Windows, and Internet Explorer can run on Linux with some help from Crossover Office, as we described in Chapter 6. And there are, to be sure, other web browser options. For purposes of this chapter, though, we'll assume that Windows clients are running the built-in Internet Explorer and Linux clients are running the built-in Firefox.

Apache, IIS, Internet Explorer, and Firefox are all excellent applications. And the Web is an environment with many published standards and a high degree of interoperability. On a basic level, compatibility between, say, Firefox and IIS or Internet Explorer and Apache is excellent . So we don't need to ask questions like "How do I allow Internet Explorer users to connect to my Apache web server?" That just works, and it always has at a basic level.

The hard part is making sure all of the features of our sites work on both browsers and making web applications designed for one server work when installed on the other. And that's what we'll tackle in this chapter.

image from book
 


Windows and Linux Integration. Hands-on Solutions for a Mixed Environment
Windows And Linux Integration Hands-on Solutions for a Mixed Environment - 2005 publication.
ISBN: B003JFRFG0
EAN: N/A
Year: 2005
Pages: 71

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net