Apache 2.2.0 Released 179
ikewillis writes "According to an announcement on apache.org, Apache 2.2.0 has been released. From the announcement: 'This version of Apache is a major release and the start of a new stable branch. New features include Smart Filtering, Improved Caching, AJP Proxy, Proxy Load Balancing, Graceful Shutdown support, Large File Support, the Event MPM, and refactored Authentication/Authorization.' View the ChangeLog or check out the new feature list."
Jeez (Score:2, Funny)
the wild west! (Score:3, Funny)
Re:the wild west! (Score:2)
You know, Cowboy programers. Geddit?
How does 2.2 stack up to 1.3? (Score:4, Interesting)
I'll be willing to try upgrading in the near future in hopes of experimenting with and making use of the some of the newer featues, but I would like to hear some first-hand information from those who have recently made the leap to 2.2, if at all possible.
Re:How does 2.2 stack up to 1.3? (Score:3, Interesting)
I'd like to start moving forward and make the big jump, but 1.3->2.2 probably isnt going to happen. What are people saying about 1.3->2.0 now?
Re:How does 2.2 stack up to 1.3? (Score:3, Interesting)
Re:How does 2.2 stack up to 1.3? (Score:2)
besides, doesnt 2.0 choose the process/
Re:How does 2.2 stack up to 1.3? (Score:3, Informative)
Re:How does 2.2 stack up to 1.3? (Score:2)
Re:How does 2.2 stack up to 1.3? (Score:3, Insightful)
Re:How does 2.2 stack up to 1.3? (Score:2)
Re:How does 2.2 stack up to 1.3? (Score:2)
Do you really need to change? (Score:5, Insightful)
Indeed, it sounds like you have what may be the perfect situation. Even if your servers are somewhat older, and not the most powerful, they are still very solid Sun systems. They will basically last forever. You suggest that mod_perl is working very well for you at the moment, too.
Perhaps an upgrade would be the worst thing you could do. Sticking with older, proven systems is many times a very wise idea.
Re:Do you really need to change? (Score:2)
Spoken like a true !businessman.
Consider the new feature:
I applaud Apache adding this, as it keeps alive the traditional approach of not forcing features onto people. However, real businessmen are going beyond th
Re:How does 2.2 stack up to 1.3? (Score:4, Interesting)
In the meantime, you should upgrade to 2.2, post a link, tell us what happens to your server.
Re:How does 2.2 stack up to 1.3? (Score:2)
Re:How does 2.2 stack up to 1.3? (Score:2)
When slashdot goes dark, at least we'll know why ;-) Perhaps we could tell them what happened to their server.
Seriously, the original post in this thread is on the right path. If you are using software that is working well, is compatible with the existing tools, and you're happy with it - why change?
Immediacy of security patches might be one reason, but with the user base, I'd say that 1.3 will be around for a long time.
Re:How does 2.2 stack up to 1.3? (Score:2)
For historical reasons we run on Apache on Windows. We currently run 1.3 and wished to upgrade to 2.0 because it is supposed to work better on Windows. We run a high volume site with a farm of servers building dynamic pages. Apache 1.3 has worked reasonably well but it leaks constantly and hangs processes fairly regularly under high load (>80%). We switch a few servers in the farm to 2.0.54 in our production set up. What a disaster! Desp
if you want to get started ... (Score:2)
Run Apache 2.x on the web facing side and use mod_proxy / mod-rewrite to serve your 1.3 pages to prevent any re-writing etc.
You can then migrate bits of uri at a time.
Great Job ASF (Score:5, Insightful)
you guys ROCK
and special thanks to paul who pushed this through!
Inertia (Score:5, Interesting)
Anyway, I guess the big question is, how many people will actually adopt 2.2.0. I still remember when 2.0 came out to mostly a yawn as most people kept using 1.3.x. Even today, most of the servers that I come across or administer are still using 1.3.x because unless you were running Windows, 2.x didn't really offer spectacular improvements over 1.3.x, and looking at the changes for 2.(1|2).x (anyone who's going to transfer a >2GB file over HTTP is crazy
Re:Inertia (Score:2)
And unlike some companies, they can't even switch over to a subscription model to keep us on the treadmill :)
Re:Inertia (Score:2)
There are other possibilities like fastcgi, but those require rewriting application code, and are more difficult to administer (unless I'm mistaken, in which case please inform me).
Does anyone know anything about that module or why it was discontinued?
Re:Inertia (Score:2)
If you use mod_php or mod_perl without the mpm_perchild (which doesn't really exist or work), then anyone who can upload a script can also read any other script on the machine (and get database passwords). There are a few kludges, like php's safe_mode which blocks some actions, but it's not really the right place for that kind of security, which should be in the webserve
Re:Inertia (Score:5, Informative)
The change from 1.3 -> 2.0 was a very major one. The entire api was retooled; and for good reason, ap 1.3 had some rather serious deficiencies in the extensibility department (module load order significance, etc). 2.0 saw the birth of the exceedingly well designed APR (Apache Portable Runtime), a module-participation-driven abi ("hooks") and fast stack-unwinding i/o handling ("fitlers"). All good stuff, but slightly less able performance-wise on low-cpu-count hardware (extensibility always comes with a pricetag) and completely imcompatible with any module of even moderate complexity that had previously been written.
Times have changed though. The robustness of the abi design combined with the APR has led to some outstanding modules, such as extensive state awareness and dynamic load-balance adjustment without even USR1-style interruption. None of these capabilities are even remotely plausible under 1.3.
The point is: 2.2 is still the same core api design. Certainly, it contains some enhancements, but the bridge that must be crossed is miniscule in comparison to the 1.3/2.0 transition.
There is still much room for improvement (when isn't there?). For example, mpm looks like a good idea on paper, but how well does it really work in terms of abstracting the process/thread semantics into fairly "pluggable" components? How well can it really work? Thread-based design requires a completely different approach or the end result (treating threads like processes) simply nets you more "accounting" overhead and few significant gains to offset that (yes, I realize it wins on win32 which does not have a light-weight process model).
Re: Version numbers (Score:5, Informative)
As for transferring >2GB files, this comes up many times every day on #apache, and fairly frequently on the mailing lists, so people do actually want to do this.
Folks that are still using 1.3 are missing out on enormous strides forward. The "it still works fine, why should I upgrade" crowd are completely welcome to remain where they are, and we're not going to compel to move, but they are going to miss out on all sorts of cool things, in the name of "it's good enough already." Their loss, not ours.
Re: Version numbers (Score:2)
I haven't upgraded because most new security problems reported in Apache are for the 2.0.x branch, not the 1.3.x branch.
You say I'm missing out on enormous strides forwar
You are contradicting yourself (Score:2)
but they are going to miss out on all sorts of cool things, in the name of "it's good enough already." Their loss, not ours.
Why not say: it 1.3 does everything you want it to do then you do not need to upgrade. If you see something you do need (therefore 'it works fine' may not be true for a given value of fine) then upgrade.
Except that is all implicit in the minds of every other reader.
Re:new versioning scheme (was inertia) (Score:2)
And the authorization/authentication system rewrite is a nice BIG improvment over the old authentication stack. The new one allows you to explicitly specify which "backends" to use to authenticate and in which order.. Plus al
CGI continuations (Score:2, Interesting)
wtf? (Score:4, Interesting)
And who says continuations are a valid way to write web apps? I prefer to use request/response because that's the model of the underlying architecture. I also want my URLs to represent named entry points, not continuations within some arbitrary program.
And how the heck would Apache know how to save a continuation in any arbitrary programming language? Or is Apache supposed to turn into a set of libraries, one for Smalltalk, one for Ruby, one for Lisp.. ?
Explain what you mean, son....
Re:wtf? (Score:2)
Re:wtf? (Score:2)
do you have any evidence that google use cgi?
Re:wtf? (Score:2)
Re:wtf? (Score:2)
Combining mod_proxy with mod_cache (Score:5, Interesting)
mod_disk_cache plus mod_proxy's ProxyPass seems like just the ticket - I could give it a few servers to proxy for, give it a few hundred gigs of cache, and it would then automatically intelligently cache for those servers. This would be a great, easy plug-in solution.
Has anyone used mod_proxy and mod_cache in this fashion? It'd be great to hear about others' experiences or configuration examples.
Re:Combining mod_proxy with mod_cache (Score:5, Informative)
use cache_peer to setup multiple debian mirrors as parents and it'll share the load between them.
In my testing with squid 3.0 vs squid 2.5 vs apache 2.1.9 (the last beta version before 2.2.0), squid vastly outperformed apache when it came to this type of application.
I'm sure someone will explain to me that apache 2.2 is actually far faster than squid, but in my experience, it's not.
If you want to provide the mirror as a subdirectory of your current site, instead of giving it its own IP and domain, just set up squid to reverse proxy your entire site. You can configure different paths in the url to go to different parent servers, so
YMMV etc etc, but that's what I'd do.
Different mirrors for different directories (Score:3, Interesting)
Can Squid handle that kind of flexibility? That's what drew me to Apache's ProxyPass.
Re:Different mirrors for different directories (Score:4, Informative)
apt-proxy (Score:3, Informative)
Re:Combining mod_proxy with mod_cache (Score:2, Informative)
"HTTP Replicator is a general purpose, replicating HTTP proxy server. All downloads through the proxy are checked against a private cache, which is an exact copy of the remote file structure. If the requested file is in the cache, replicator sends it out at LAN speeds. If not in the cache, it will simultaneously download the file and stream it to multiple clients. No matter how many machines request the same file, only one copy comes down th
Re:Combining mod_proxy with mod_cache (Score:3, Interesting)
Name
apt-proxy - A proxy for saving bandwidth to Debian servers
SYNOPSIS
apt-proxy [options] [logfile]
DESCRIPTION
apt-proxy is a python program designed to be run as an stand alone
server via twistd, and provides a clean, caching, intelligent proxy for
Stick with NCSA HTTPd 1.5.2a (Score:2, Funny)
Apache 1.3? Still has issues!
I think I'm going to stick with something I can really trust!
Maybe I'll try CERN httpd 2.14, I'm not sure if 3.0 has enough of a track record.
Re:Stick with NCSA HTTPd 1.5.2a (Score:5, Funny)
Maybe I'll try CERN httpd 2.14, I'm not sure if 3.0 has enough of a track record."
Running Debian stable, eh?
Foxy Load Balancing (Score:2, Funny)
Thank god for LFS. (Score:4, Insightful)
This will finally mean I can wget DVD ISO images! Work with large files over WebDAV and it will also mean my logs can grow over 2GB which is cool.
HTTP works where FTP has problems when dealing with complex networks (firewalls/NAT etc etc).
Re:Thank god for LFS. (Score:2, Funny)
Re:Thank god for LFS. (Score:2, Insightful)
The point is not that you don't need to do it, it's that if you're using http to do it you're an idiot. Claiming that http servers need to support over 2gb is like claiming that DNS servers need to. And show me a real reason to go for 64-bit on the desktop.
HTTP works where FTP has problems when dealing with comple
Re:Thank god for LFS. (Score:4, Insightful)
And who the hell would want to run a server from behind a firewall? What a ridiculous idea.
Just use passive mode and it will just work just as well as http.
I see you've never configured a firewall then.
Claiming that http servers need to support over 2gb is like claiming that DNS servers need to. And show me a real reason to go for 64-bit on the desktop.
He gave some perfectly valid reasons for wanting LFS - WebDAV for one. You ignored them, probably because you didn't understand them. And then you called him an idiot. At least your sense of irony is well developed.
Re:Thank god for LFS. (Score:2)
Re:Thank god for LFS. (Score:2)
Re:Thank god for LFS. (Score:3, Insightful)
FTP is a horrible protocol - two TCP streams to do the work of one? Secondary connection data stored in the first connection's stream? No real standard to getting stat() info on files? No resumes/byte ranges in the base standard? On the fly ascii translation??
While HTTP has it's own warts, it does support things like byte ranges, proxying, single TCP stream transfers, etc.
I'd personally love to see a new FTP2 protocol that ditches all the old mainframe stuff, kills the ASCII transfers, and allows pr
Re:Thank god for LFS. (Score:2)
Not always. Passive is better at working through firewalls, but not a guarantee. Let's look for a second what happens when you use passive FTP.
227 Entering passive mode (172,17,2,1,128,237)
Re:Thank god for LFS. (Score:2)
Can you not use PORT to change it if it's unsuitable?
So even passive FTP is not guarenteed to work in a NAT/Firewalled environment if outgoing traffic is port filtered (which isn't uncommon).
Point, yes, if you're filtering outgoing stuff you need to track FTP connections. But that's just a question of enabling one option in every decent firewall I've seen.
Re:Thank god for LFS. (Score:2)
One option, quite possibly.... an option that I have access to setting behind a corporate firewall? Not so much. They may be "fringe cases," but there are valid uses for transmitting files over HTTP.
Another possibility where it may be desired is transmitting confidential data over HTTPS. While I admit that 2GB is a lot of data and there
Re:Thank god for LFS. (Score:2)
It should be how it's set up, though I appreciate it may not be.
They may be "fringe cases," but there are valid uses for transmitting files over HTTP.
Of course there are - there are always cases where you don't have any other choice. Being able to transfer more than 2gb over http is a nice option to have for emergencies, sure - but it shouldn't be something you ever plan on having to use.
Another possibilit
Re:Thank god for LFS. (Score:2)
No. It's meant for doing secure transfers, that's what you should use it for, if you don't want a secure transfer you use a different protocol, which is how it should be.
Re:Thank god for LFS. (Score:3, Insightful)
DNS can't support LFS tyep sizes, you would actually need to change the protocol. HTTP on the other hand has worked fine with LFS for a _long_ time, just not if you are using apache-httpd.
And as another webserver author, I can give you a couple of reasons for using HTTP over FTP:
Re:Thank god for LFS. (Score:2)
Ok, so it's something apache should support. But it's not something to get excited about, because you shouldn't ever be using it.
Caching proxies, esp. helpful at large organisations where many people will be requesting the same data
True, and working in exactly the same way for FTP.
proxies ... often it's the _only_ way
Re:Thank god for LFS. (Score:2)
It does ... or at least you can abuse chunked encoding in HTTP/1.1 to do a constant stream of data without any changes to a normal HTTP server/client.
I can imagine that there might be better specific protocols, for quality control etc. although those can probably be hacked in using extra extension headers.
Are you asking if I think it's the best protcol to start from ... hard to say, if you had no other constraints then I'd probably go
Re:Thank god for LFS. (Score:2)
Good admining takes time, effort and cost.
exposure to risk,
Nope. Dead wrong there. Using something for what it isn't designed for will always give you more risk overall.
When was the last time you downloaded a file from a DNS server?
When the story about how to transfer files over DNS hit this site. It's somewhat cool, but not really a good idea.
Sure, RAM. 3D work, CAD, video. What are you saying, 4gb should be enough for anyone? :)
I almost am. I'll certainly say tha
Re: (Score:2)
Re:Thank god for LFS. (Score:2)
Mine always used to, but when I went to buy my latest machine I could not find a "desktop"-oriented one with more than 2 slots. I'm not happy about it, but it was that or nothing.
Are you saying that because we (probably) won't need 64-bit processors on the desktop for a few short years, we shouldn't bother preparing for them now? That's just plain short-sighted. Take a look at the history of computers and you
Re: (Score:2)
Re:Thank god for LFS. (Score:2)
Nope, brought the parts and put it together myself.
and even if you did upgrade the RAM, since I assume this is a 32-bit machine we're talking about, having more than two slots would be pointless.
Again, no, well, it is at the moment for reasons I won't go into, but it was brought as a 64-bit machine.
You could put two 2 GB DIMMs in each, and then you'd have 4 GB of
Re:Thank god for LFS. (Score:2)
Re:Thank god for LFS. (Score:2)
Large File Support (Score:2, Funny)
But seriously, the timing of this feature being added couldn't be better, 5 years ago there would've been no point, but with the current rate of speed increases in home Internet, it will become somewhat more useful!
When are they going to fix mpm_perchild (Score:3, Interesting)
I'm thinking the way it should be is only spawn processes for the specified user when an incomming request needs to be served, keep the process around to serve new requests if there are more to serve, and kill it off if there is no requests in X period of time. This would surely make hosting things like cgi much more secure.
Re:When are they going to fix mpm_perchild (Score:3, Interesting)
Re:When are they going to fix mpm_perchild (Score:2)
Re:When are they going to fix mpm_perchild (Score:2)
Re:When are they going to fix mpm_perchild (Score:2)
"Fix perchild" was one of the apache / google summer of code projects; I haven't seen a status update since "someone has expressed interest in doing this" though :(
For that solution I would use http://www.lighttpd.net/ [lighttpd.net]
lighttpd does separate user per vhost? I scanned the docs looking for that feature, but couldn't find it :-/
Re:When are they going to fix mpm_perchild (Score:2)
Re:When are they going to fix mpm_perchild (Score:2)
There is, it's just an inefficient pain in the neck. The only real reason for needing root privileges for Apache is to bind to port 80. What you do is you set up each user with their own instance of Apache running on a non-standard port > 1024, running with their own privileges. Then set up an instance on port 80 that merely proxies the content from the users' Apache
Re:When are they going to fix mpm_perchild (Score:2)
but WHEN! (Score:3, Interesting)
Re:but WHEN! (Score:2, Informative)
I think you could also do a killall -HUP httpd and this will also work.
LFS! Finally! (Score:2)
RFC 2817 SSL Upgrade (Score:3, Informative)
This means you can do SSL on virtual hosts without a dedicated IP address. This will greatly increase the penetration of SSL (plus free certs like CaCert) and encryption in general. The $5/mo webhosters will be able to offer SSL to clients. Ubiquitous encryption considered good.
This is, of course, a Catch-22 - there are no browsers with the capability yet (let's get Mozilla going...) but this is the necessary first step. Come back in a couple years and see how things are going.
Oh, and I'm happy about the Cookie proxying patches which I reported against 2.0 but were applied to 2.1. This is the only Apache feature I've ever had a hand in designing so I'm happy to see it available. Basically, anything you do with cookies (paths, domains) should be properly proxied now. I've been waiting for this for a long time. Yay!
Re:RFC 2817 SSL Upgrade (Score:3, Informative)
http://wiki.cacert.org/wiki/VhostTaskForce#head-78 b8f803f17fa69b4333aa376a641b2e843c2cb3 [cacert.org]
http://www.outoforder.cc/projects/apache/mod_gnutl s/ [outoforder.cc]
https://bugzilla.mozilla.org/show_bug.cgi?id=11616 8 [mozilla.org]
Re:Right... (Score:2)
Can reconfigure without restart NOW (Score:5, Informative)
You can also do this: apachectl -k restart
Re:Can reconfigure without restart NOW (Score:5, Informative)
See the docs on stopping and restarting [apache.org] for reference.
Re:Can reconfigure without restart NOW (Score:5, Informative)
Re:Can reconfigure without restart NOW (Score:3, Funny)
Who needs manpages anymore? Just ask on /., and some seasoned sysadmin will come to your rescue! (note: not claiming anything about the parent poster, looks genuine though)
--This comment also served to you by Apache [netcraft.com]Re:Can reconfigure without restart NOW (Score:2)
Though, for Apache, I'd be using something along the lines of http://google.com/search?q=site:apache.org+reload [google.com]
Re:Right... (Score:5, Informative)
Close... (Score:2)
Re:Right... (Score:3)
I would personally settle for a configuration file format which isn't confusing, poorly organized, and often times not parsed correctly (ie, apache doesn't do what the docs imply). See Why I Hate the Apache Webserver [slashdot.org], which was a presentation at ApacheCon Europe.
Apparently everything the author pointed out was promptly forgotten or ignored.
Last time I posted about this, someone accused me of advocating "dumbin
Re:Right... (Score:2)
Re:Bid Update? (Score:4, Insightful)
any project in it's mature stages wont change much, at least not noticeable by most users.
if bash creates a new release, you aint gonna notice the difference.
if linux creates a new release, you aint gonna notice either (unless it's a major release, but in comparison, this apache release is not)
Re:GUI? (Score:5, Insightful)
1/ There are Apache GUIs. Google them up. Some are free, some are not.
2/ Opening the config file in a GUI text editor and navigating around with a mouse should be fairly easy, especially with the copious amount of documenation in the config.
3/ It's very difficult to express the rich level of complexity of Apache configurations in a GUI. Just imagine how on Earth a GUI can be made to handle nested VirtualHosts, Directorys, and Files. Throw in some regexp, and suddenly, you are faced with a situation where it becomes a heck of a lot easier to just edit the config file. To say that a GUI is always easier than text is incorrect; it depends on the situation, and Apache configs are one of those situations where this is the case (kinda like how when dealing with non-photographic web graphics, you need to use PNG or GIF and avoid JPG like the plague and how when dealing with photographic web graphics, you have to use JPG... each rules over their own niche of strength).
4/ If a GUI is made, it is highly likely that it won't be as powerful as just using a text editor; it's not as expressive (see above). But there's really not much to do with the basic configuration, either. For the most part, the default configuration works just fine, and if someone needs to edit the settings, it's mostly for the complicated stuff that would be a bloody mess to do in a GUI.
5/ Compactness and portability.
Re:GUI? (Score:2)
Re:GUI? (Score:2)
Re:GUI? (Score:2)
3/ It's very difficult to express the rich level of complexity of Apache configurations in a GUI. Just imagine how on Earth a GUI can be made to handle nested VirtualHosts, Directorys, and Files
Hmm, it's almost like some kind of tree like structure might be appropriate
I realize that it is possible to create confusing arrangements in Apache which do not form a simple tree, but the same is true of filesystems and no
Re:GUI? (Score:2)
You know, even in the very worst case you can have a text edit box in the GUI. Yes, I admit that's somewhat self-defeating, but a GUI could have other variables more suited for dro
Re:GUI? (Score:3, Informative)
Re:GUI? (Score:2)
This doesn't mean I'd advocate binary config files (I never would). However the prospect of using XML is intriguing.
Re:'...the start of a new stable branch...' (Score:2)