Switching Painlessly from IIS to Apache? 29
Sheik Yerboutii asks: "The recent downtime caused by the Code Red and NIMDA worms
has prompted my Manager to start considering moving away
from IIS to Apache. I've been tasked with finding out just how difficult it will be to move to the new webserver. I've got to find out things like how to install and configure it (relatively easy, it's all documented at www.apache.org) but also, things like what do we de now that we've been working in VBScript ASP for about 6 moths?" We posted a similar question to this one,
just over a year ago. Any changes or additions to the advice given in that discussion?
"I've read that Apache::ASP exists and that's got something to
do with mod_perl but now I'm going in circles figuring out how to make this thing work. I also can't find straight answers on things like if we make the cut over, will we have to convert the VBScript ASP to Perl ASP?
Can anyone relay their experiences with cutting from IIS to Apache? Running ASP with Apache? Most importantly, what are the best resources available for Apache administrators? (hopefully something with a discussion forum)"
Wouldn't it be simpler (Score:3, Funny)
Before taking the plunge (Score:1, Insightful)
Of course, if the codebase is relatively small, rewriting the ASP stuff in Perl or Python or C or PHP or... would be an easier task. (Not that I'd want to do it...)
Re:Before taking the plunge (Score:1)
Or... (Score:1, Redundant)
Apache::ASP (Score:4, Informative)
I assume you saw The Apache::ASP home [apache-asp.org], a link you can find on the mod_perl home [apache.org].
You can also run ASP on Apache using ChiliSoft ASP [chilisoft.com], which seems to be owned by Sun now. I've had little experience with the latter, but it seems to work out of the box with existing ASP sites and also has a web admin utility, along with the warm and fuzzy feeling of paying lots of money for something :-)
Apache and IIS are both pretty flexible, but Apache at its core is much simpler and forces you to specify what you want rather than having everything available by default and allowing you to stumble into what you might need. (Not that you'd do that, but I'll be a lot of sysadmins are wishing that IIS weren't so featureful right now...)
Chris
ChiliSoft ASP (Score:4, Insightful)
No, I don't work for them, but the $500 I spent was well worth it. If you want to see it in action, e-mail me privately and I'll give you a login to poke around.
You know... (Score:2)
For that matter, I guess they don't even need to opensource it. They could include it as part of their package.
In my experiences, the lack of ASP is the biggest turnoff for people using IIS but interested in switching to Apache. I know PHP is a good solution, but it takes a while to port hundreds of applications written in VBScript and Jscript.
Re:Apache::ASP (Score:1)
be nice to make there linux box seem even more
like a windoze box.
Apache + ASP/VBScript (Score:3, Interesting)
It would be a much simpler solution...
Re:Apache + ASP/VBScript (Score:2, Informative)
The first thing that springs to mind is an ASP -> PHP converter that I've heard of, called 'asp2php' [naken.cc].
Perhaps a more 'correct' way of doing things would be to use the ASP-mimicing PERL functions (although I'm aware that this isn't exactly what you were asking for, it's the most 'neat' manner, if you really /have/ to use ASP-based nonsense).
A search through Google is the most obvious place to look, however, which turns up, amongst others, a thread [phpbuilder.com] on PHPBuilder [phpbuilder.com], which suggests Apache::ASP [nodeworks.com], which, AFAICT, uses the abovementioned PERL module (given that it requires the Apache module mod_perl).
HTH.
AFAIK... (Score:3, Insightful)
i.e. you either use ChiliSoft or do a rewrite of your code base.
The ActiveScripting people have some good options under Windows that might be helpful if you want to maximize code reuse.
asp2php (Score:3, Informative)
http://asp2php.naken.cc/
I have not used it but it does seem to be updated.
Yes, but the last 10% (Score:2)
Re:asp2php (Score:1, Insightful)
Check out JediTrainer's comments (Score:2, Informative)
Re:Check out JediTrainer's comments (Score:5, Informative)
I was quite serious about that post. I made it sound easy (and, well - it wasn't THAT hard). The hardest part was for that 8 months the work was more difficult. We had to implement nearly everything from scratch again, which was a bit of a pain (ie: replacing the working and debugged with new untested code).
The advantage, however, was that because we were effectively rewriting the application and phasing out the old one, we had the opportunity to not make the same mistakes that had been left in the old ASP/COM version of our program. What we lost in time porting the app we gained in program efficiency and ease of maintenance later (or, for us, now). Keep in mind that I stuck my neck out on the line - the bosses would have had my head had this plan backfired. This app was in production the entire time during the conversion - 100% uptime and new components were phased in over this period of time.
Before you start on anything like this, do take the time to carefully plan your approach (technologies, API layout, modularization, maintaining flexibility etc). I spent about a month's time planning how my team was going to solve this conversion project, and this time has paid off tenfold in the end. I can honestly say that we'd already have been dead had we stuck with the old model - the workload with the amount of staff we have, along with the relative unmaintainability and inflexibility of the old code (we're seeing a lot of demand for customization to our app), would have made it impossible to keep up. Properly designed modules made customization a breeze - simply extend a couple of classes and throw in custom code for that customer.
If you have more specific questions, I'd love to help give you some insight. Obviously I'd be under some NDA so I can't reveal exactly what our app does, but I can certainly point you in the right directions for accomplishing what you want to do. Send a note to arozeluk at home period com.
In theory... (Score:3, Informative)
Whose idea was it to put Windows servers on the 'net in the first place, anyway?
Cheers //Johan
Re:In theory... (Score:1)
I have read some good comments but here are my issues/problems with my conversion.
Case & filenames I never realized that this could be that big of a problem. When moving the site to Apache and Linux, I was faced with converting links and file names to the same case. The other issues you might have are references to Default.htm instead of index.html.
php3->php4 I found minor issues with some of the php3 scripts when running under php4. So I had to look at them and do some tweaking.
I believe that you and your company will be happier in the end by switching over to Apache and php or perl. It will give you more options if you decide to switch the operating system again.
Chris
Re:In theory... (Score:1)
But the Default.htm thing can be fixed by telling Apache to include that file in its DirectoryIndex list and then symlinking to index.html.
in httpd.conf:
DirectoryIndex index.html index.php index.htm index.shtml index.cgi Default.htm default.htm index.php3
in your webroot:
ln -s index.html Default.htm
HTH,
ASP implemented in Java would help you (Score:2, Informative)
From their home page:
"Are you looking to banish Code Red and Nimda forever by moving your ASP apps to a non-IIS server?
Instant ASP runs on ANY Java-enable platform from a Linux box to an S/390 and has NONE of the security vulnerabilities of IIS..."
Apache configuration for dummies? (Score:3, Insightful)
The rest of the group would rather just keep patching IIS every couple weeks, because the setup is trivial point and click. Twiddling with
Suggestions?
Re:Apache configuration for dummies? (Score:1)
I think this applies to a lot more places than people might think. I was in a similar situation once. (just a tangent, but like many new non-profits, it started eating its young, so I bailed when the chance came to work for a more stable non-profit, so never got around to switching the server from an overworked Mac running ASIP to a linux box)
Apache, Linux, etc.. all sound like great options to cash-strapped non-profits, but the knowledge & skills required are often insurmountable odds. There really needs to be better support out there for just this sort of thing. Linuxnewbie.org is a nice start, but when you're the only IT person, you just don't have the time to read every man page out there (and all the subsequent docs those require just to make any sense of them) on top of everything else you're doing.
Re:Apache configuration for dummies? (Score:1)
There is not a large need to fiddle with
Many people think that Unix systems only have text config utilities. This is basically untrue. Windows has the registry, which is recommends that most people don't touch. Unix has text files, which there are GUIs to configure most of the major apps. I don't see it as anything but a perception problem.
Re:Apache configuration for dummies? (Score:1)
Whoa there. I'm going to have a hard enough time arguing the case for Apache by itself. No way I'm going to even mention Linux, not right now. If anything, we'd start with Apache for NT and consider a better OS next year.
Any GUI configurators available for this?
Re:Apache configuration for dummies? (Score:1)
So its a matter of finding a good book on your desired distribution.
Re:Apache configuration for dummies? (Score:2)
Getting the word out about Apache (Score:3, Interesting)
*****
Thank you for writing your informative article regarding recent computer virus and worm attacks in the ASA BV E-Letter. Since a number of valuation analysts sometimes find themselves administering the corporate network (as two associates do at my company), the tips you provided and the accompanying links will be very helpful. I took notice to one particular passage in your article:
"On September 25, 2001, the research group Gartner warned enterprises to
'immediately' replace their Microsoft Internet Information Server (IIS)server software with a more secure server application."
I have been reading about Gartner's recommendation through various news outlets, but no one ever seems to go on and actually talk about alternatives. I would like to offer you, and any other E-Letter readers that may ask, some information on at least one alternative.
The Apache Software Foundation (www.apache.org) develops the Apache HTTP (web) Server. Here is an excerpt from their "about" page that discusses their overall mission:
"The Apache Project is a collaborative software development effort aimed at creating a robust, commercial-grade, featureful, and freely-available source code implementation of an HTTP (Web) server. The project is jointly managed by a group of volunteers located around the world, using the Internet and the Web to communicate, plan, and develop the server and its related documentation. These volunteers are known as the Apache Group. In addition, hundreds of users have contributed ideas, code, and documentation to the project. This file is intended to briefly describe the history of the Apache Group and recognize the many contributors."
Apache is actually the number one used web server on the internet. According to Netcraft, an organization that surveys the internet and collects web server and usage statistics, Apache held an approximate 60% market share of active web sites as of August 2001, versus an approximate 28% market share for Microsoft's IIS. Survey results here: http://www.netcraft.com/survey/ This survey includes over 30 million web sites and does not dilineate between corporate use, personal use, Fortune 500/100 companies, etc. (as some other surveys do).
In addition, Apache (especially when used in conjunction with UNIX-based operating systems) tends to provide a more secure web server solution. A recent Ziff-Davis (ZDNet) article from July 20 discusses the security robustness of Apache over IIS. Here is the link: www.zdnet.com/eweek/stories/general/0,11011,27928
Finally, I refer you to this link: http://slashdot.org/article.pl?sid=01/09/25/19420
Again, thank you for writing your article and I hope that some of the information I have provided you today will be helpful to our industry colleagues.
*****
Anyone in a similar situation is free to copy this letter and mark it up appropriately for their needs.
ASP (Score:1)
(which would have been a more powerful thing to be writing ASP in on IIS anyways
Or there's non ASP, PHP
But more to your interest might be the idea that was kick aound awhile ago on the mod_perl list
(that some peple started implementing I belive) of a filter for Apache::ASP that would do a cached JIT VbScript->Perl translation.