Why I Hate the Apache Web Server
schon writes "Today's the last day of ApacheCon Europe; There was a hilarious presentation entitled 'Why I Hate the Apache Web Server' for anyone who has expressed frustration with the various inconsistencies and nuances of the Internet's favourite config file. And yes, it includes a comparison to Sendmail."
I think the subject was supposed to read, "Why I hate PDF files."
"Simplify, simplify, simplify!" Thoreau
OK, so this is a PDF file that looks like a Powerpoint presentation and it is about how much he hates Apache. *head explodes*
Here is a html version, I doubt it will stay cached for very long though.
Could the on-duty-editor-at-the-moment PLEASE add small note after the links IF TFA is in fact A PDF file. Please? That is NOT too much to ask, I hope. Sorely hope.
And no, I didn't RTFA, which was in fact TFPDF.
-Is the meaning of life vanity, or is vanity the meaning of life?
Coincidence? I think not!
atleast a decent Apache install can keep on chugging along even when faced with a slashdotting.
- It runs acroread slowly, instead of loading in my already opened browser quickly
- Uses huge ugly fonts
- Has silly graphics that bring nothing to the point
- Acroread requires two clicks to close (one for the document, one for acroread)
- Yes, I want a pony
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
It's not the PDF format that sucks, it's Acrobat Reader. Use Preview or XPDF.
Complaining about PDFs is like complaining about HTTP cause you don't like IIS.
"Not yours."
I guess that when performance, and not 'tradition' is your priority, you choose the appropriate tool for the job.
News for Nerds
Wow, you ain't fuckin kidding, are ya?
-1 Uncomfortable Truth
If the presentation was Hilarious, I assume that in future Apache configuration will be easier.
Otherwise I'd define it "sadly realistic"...
aaargh
MS Comic font
Credibility--
PDF has no place on the Internet, thats why we use HTML , but that would interfere with Adobes buisness model
Hehn... pony ... want it ... can't have it ... cute.
presentation, what presentation?
.. paranoid crackpot leftover from the days of Amiga.
Apache is great but it could be *significantly* easier for beginning webmasters. And for companies to fund changes.
Sitting in #apache on freenode is actually fun sometimes. You'll actually see these common things bought up by many people every day. The PDF actually touches on only a few of the "problems" that the conf file has.
However, its the 2G file limit that makes me laugh. Sure, there's LFS (Configure 1.3 with CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64", enabled by default in 2.0.53 (and higher) and in 2.1), but to be really honest, there are far better ways to send large files. HTTP isn't one of them. There's FTP and there's also torrents; Both of which have the advantage of being designed for files rather than 'hypertext', which by nature is normally text...
NeoThermic
Use my link above, or to view my server, NeoThermic.com
the server is running apache
e sentations/apacheconEU2005/hate_apache.pdf
coral mirror:
http://people.apache.org.nyud.net:8090/~rbowen/pr
I love Apache, but in the same way I love my wife: with some trepidation. Fast and stable, flexible and reliable, but make one little syntax error and you can lose your ass.
This isn't as much "normalization" as it is "don't take so many drugs when you're designing tables."
It's not like you have to learn how to deal with life just to live it
I know Apache can be a bit tricy at times, but reading TFM would actually have solved some of your problems.
But you are free to run any webserver you want. My advice is to take a pick, and then take the time to learn how it works. I mean, none of this stuff comes for free.
In particular if the regex is completely ignored...
Is it worse than sendmail? I don't know. The last time I touched sendmail was 10 years ago. Nowadays you would have to hold a gun to my head to have me even look at it.
Wow... that was cool to see the Asbury College logo on the PDF slide show.
Completely unexpected.
My father used to chair the CS dept there...
and I can still remember an incedent where I booted up an apple IIe in the lab and the second drive started to smoke. I left it running while I ran up three flights of stairs to tell my father.
His first question was if I had turned it off.
Turns out things were plugged in incorrectly.
-Tim
-I just work here... how am I supposed to know?
Use Target Alert Firefox Extension http://www.bolinfest.com/targetalert/ It will put a little PDF icon beside any PDF link, and thats enough to stop me accidently opening PDF's!
Come on, that "designed for files" is a too easy shot. For retrieving a specific, known resource, HTTP is pretty great, compared to FTP:
- No login- og directory-walking-overhead, just a simple request and a simple reply
- Just a simple tcp connection (no extra data connection and firewall hell)
- Simple conditional requests (If-Modified-Since) and Range-requests (Range, If-Range)
There really is nothing in the HTTP protocol that argues against HTTP as retrieving a single large resource, and where FTP would be better.
Other relevant conditions could be multiple files, unknown file names (where FTPs directory lists could be of great help) and the like. But for just requesting one big file, FTP doesn't have any advantage or is "more designed" for serving a large file. It isn't "more correct" or "better" to use FTP, just because of the abbreviation.
- Peter Brodersen; professional nerd
Tell me why I'm supposed to take ANYTHING seriously from someone who publishes a rant in Comic Sans.
(or a font that looks a lot like it)
The basic auth logout: yes, people have been asking for it for years, but it's HTTP itself that doesn't provide a mechanism for logging out users, it's not Apache's fault.
The lax syntax: hell no. That sort of thing leads to security holes. If I make a typo, I'm perfectly capable of going back and fixing it, should Apache notify me immediately. But if it misinterprets a typo as meaning something I didn't want, I won't know about it until it bites me in the ass. There is nothing wrong with strict syntax for config files.
The rest are relatively sane complaints and ones I've said myself in the past. Even if they are contained in a godawful PDF.
NOT A FONT. ok? Repeat after me, Comic Sans Is Not a Font! In 1995 Microsoft released the font Comic Sans originally designed for comic book style talk bubbles containing informational help text. Since that time the typeface has been used in countless contexts from restaurant signage to college exams to medical information. These widespread abuses of printed type threaten to erode the very foundations upon which centuries of typographic history are built. While we recognize the font may be appropriate in a few specific instances, our position is that the only effective means of ending this epidemic of abuse is to completely ban Comic Sans. http://bancomicsans.com/home.html
...a few tens of thousands of downloads I'd like to see their bill.
Only to idiots, are orders laws.
-- Henning von Tresckow
...but I now know all about the threads settings since we moved Novell GroupWise WebAccess to Apache 1.x and the transition wasn't, uhh, smooth, shall we say. ("Can anyone say 'abends'?) A real bitch to troubleshoot.
I was actually thinking longingly of the days of the Netscape Enterprise server for Netware.
You'd think that the bullet point "Yes, I know. I wrote that line in the docs. It's still really irritating" in the presentation might have clued the (grand)parent in that Bowen was on the Apache team...
He has some points. I actually quite not believed - but I've tested it and it looks like he is not lying. ;) But to be honest I've never run into any of these oddities - I just RTFM, configure it and it works...
Now maybe one point was invalid - you do not have to restart the server to make it reread config - you just send a signal to its process and it is in fact restarted - but practically it does no difference.
I'm also a big fan of the "Grumpy Editor's Guide" series of articles at Linux Weekly News.
In the words of "Winston Churchill"...
"It has been said that democracy is the worst form of government except all the others that have been tried."
"It has been said that Apache is the worst web server except all the others that have been created"
-=Linsys=-
http://www.intrusionsec.com
If I want these two aliases to work I have to:
/foo/bar /path/bar /foo /path/other
/foo> /foo/bar>
Alias
Alias
But if I want two Locations to work, I to do it the other way around:
<Location
</Location>
<Location
</Location>
Couldn't agree more. This shows how geeky Linux programmers think and it does not help. One wonders why we do not adapt autopackage <URL:http://autopackage.org> or improve it. It would surely solve lots of problems. But why is it so popular? If all these discrepancies were removed, Apache's usage could soar to 99.99%.
i use linux exclusively and seldom touch closed source software but despite its oss flagship position i'm not much of an apache fan either. ... bash is just as lacking. ... that's a nice webserver.
same goes for other big oss projects
roxen
still haven't found a better shell
You know what? I'm sitting here at 2:55am, a little bit drunk (actually, screen is spinning, thought I'd check in to Slashdot for a dose of cold hard reality). I read this PDF file, yes; I laughed until I cried; "not yours", it said.
666KB...
I noticed this too, brother. I wondered to myself...had anybody else NOTICED? Yes...a kinsman had.
Ho!!!!!
This whole thread is about a humorous troll (I rtfa. Yeah, I know that is verboten here...), so in the spirit of the author's PDF, I offer you a cheeky response:
They ALWAYS lock up the browser and force a ctrl-alt-del to shut it down.
Not if you use a good OS, like Windows. (ducks)
HA! I just wasted some of your bandwidth with a frivolous sig!
When there's a subdirectory in the ~/Sites directory on OS X (say, the "images" directory), if I don't include a trailing slash ("http://site/images"), Mozilla says "www.*.com could not be found", but when I add the trailing slash ("http://site/images/") it works. WTF?
#naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
-- Thou hast strayed far from the path of the Avatar.
It's pretty funny, although I almost stopped reading when I saw that font...
I can explanate how to administrate your network. You must configurate and segmentate it, so it can computate.
I'm still configuring sendmail too, on a three-year old install. It mostly works, but its that last 5% of tweaking that is maddening.
He has some great points, and if some non-fan boys would catch things, he's an apache developer. He has the right to hate some things in apache.
I'm glad to see that someone who works with the project has some of the same frustrations I do:
mod_imap - why does anyone still need this?
http and https needing seperate entries in vhost
vhosting in general
And to those whining about PDFs would you rather to have this posted in a PPT file? Comic Sans probably means Powerpoint is at the root of this. And I'm guessing he didn't need to put the out there, so he picked a format everyone can read without resorting to PowerPoints horrible html conversion. I hate PDFs, and really hate them viewed in the browser, but that's what "save as" is for. And I'll bet you didn't have to go get a viewer just to read this. There is no pleasing the Slashbots who would rather whine about a PDF than take the criticism in stride, and with the humor it was presented in. If you have to whine about the delivery, then you're too childish to pay attention to the message. He may not have OpenOffice installed at his work (there are places who don't allow that), and this may have been the best he could do under reasonable effort.
I'd prefer his effort go into the server than in giving us an HTML page rendered just for us. He could use that time to fix some of the annoyances! Some have better things to do than to please everyone.
And I say we give him a pony!
I am, and always will be, an idiot. Karma: Coma (mostly effected by
Winston Churchill once said that "Democracy is the worst form of government .... except for all the rest."
s/Democracy/Apache/
Pardon the obvious comment I'm compelled to spew in Apache's defense:
Due to the Open Source nature of apache, anyone who is ready to actually improve apache (in ways that the apache people potentially don't like and won't accept into the code) can fork apache and make their own even-easier-to-configure web browser.
Also remember that functionality comes before user friendliness. It should be no suprise there are warts on the config syntax, just be glad the damn thing works at all! If you want a real taste of ugly, go use IIS or (shudder) Weblogic. You'll run back to apache so fast your legs will fly off.
As apache matures even more, no doubt these warts will eventually get addressed. Maybe some kind of little task force will even form with this goal in mind.
- The config file format is horrendous. We've had XML for how many years now?
- The module architecture is a pain. Modules make so much sense as objects. What about that? How about having a C++ shared object system?
- What's up with threading? What about the select loop model?
- It's partially Apache's fault: PHP is horrible, and much of its horribleness is because of the lack of support for better models within Apache itself.
- Memory management is a pain within modules.
Those are off the top of my head. Apache is not a shining example of how great open source software can be. It is a bad design that's been around for a long long time.Posting anonymously so that no one will search back in history and see how badly I flame Apache when I'm trying to sell to customers who are basing their systems on Apache/PHP.
The idea of Open Source is you're supposed to be able to look at or change the source if you need to, right? RIGHT? So why, by all the flaming sphincters in hell, did the coders use single letters for major variable names? I'm not talking about the standard i, j, k for index counters; just grep through the code for the data structure called "r". I'll wait.
Without the trailing slash, Apache might redirect so the browser knows that it is in a directory (making relative links work).
If http://www.mozilla.org/projects didn't redirect you to http://www.mozilla.org/projects/ , the relative links would not work as the link "seamonkey/" would link you to http://www.mozilla.org/seamonkey/ (doesn't work) instead of http://www.mozilla.org/projects/seamonkey/ (which works). So, the redirect itself is fine.
The problem, however, is that Apache has to redirect with a full URL, including host name. A detault Apache uses its own ServerName (which might be some wacky, irrelevant name) instead of the name that the client requested in the Host header. This could make http://www.your-site.com/images redirect to http://mybrandnewcomputer/images/ which might not be desired.
This behaviour can be changed by setting UseCanonicalName to Off instead of (the default) On. That might solve your problem.
I personally think that UseCanonicalName should be Off per default since it mainly causes confusion otherwise (and a user has to know about HTTP and/or logic for redirection and the process of constructing an URL for debugging this problem).
- Peter Brodersen; professional nerd
It takes almost no time to load. KDE 3.4.x has made me really happy to interface with PDF files, because the PDF integration is fast and slick.
It beats the shit out of Postscript files (I shouldn't have to install 5 separate packages for 1 file format!), and is highly preferable to a powerpoint doc on the other end of the hyper link (which I wouldn't be able to read anyways).
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
The funny part is that the image with the t-shirts shown at http://bancomicsans.com/image/bcsbycafepress512x25 6.jpg has the text "MADE IN THE USA" as a sales argument.
:-)
Well, Comic Sans was made in the USA as well
- Peter Brodersen; professional nerd
Remember kids, if you're going to troll, get the acronyms right.
No sig, sorry.
LOOK, you lot have missed one critical point. The guy is a committer to the apache httpd project itself. He's on the INSIDE. He knows more about apache than YOU.
He's just pointing out some of the sillyness to his own teammates that apache has that people that are involved with and use apache get used to. (And, even if it is documented, that doesn't mean it's not silly.)
mod_imap? Why is that still on by default, for example.
As for the PDF complaints, THIS IS A PRESENTATION AT A CONFERENCE. What would you have perferred? A PPS file? Those that complain about the fonts? Get over yourselves.
Hmm...for me, it registers as 667KB in Opera. And in Windows explorer for that matter.
Quick...switch browsers.
Why can't apache's configuration file be XML compliant? It would make life sooo much easier if it were.
It would be sooo much easier to parse and validate the configuration file if it actually conformed to SOME kind of standard.
For that matter, why not use some limited XSL syntax in order to handle conditions?
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
You've never used a Mac, have you?
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
http://www.illhostit.com/slashdot/hate_apache.txt
Same thing, ran through pdftotext... for those of you who hate pdfs.
http://illhostit.com/ - Webhosting
In this entire (nerdy) thread, I have yet to see any alternative webservers. Is it that hard to write a basic, fast, secure webserver? I've seen webservers written in perl, ruby, and REBOL in less than a hundred lines... what gives?
I read the pdf presentation and all it bashed was hard-to-config problem.
For those people who can't handle the Apache conf, there is always plesk, webmin, etc to assist them.
For the remaining of us who are capable to mess with the httpd.conf and others, it provides us a light-weight and simple mean to administrate our servers.
for those that dont want to load adobe or whatever pdf viewer you have, here's a text/html version. of course the pictures weren't included.
http://www.krunk007.com/temp/hate_apache.html
HD Trailers
Couldn't you just have some extension to drop the credentials server-side so that the client would have to authenticate again if they clicked on such-and-such a link?
HTTP is stateless. The client has to supply authentication for each request anyway. The only reason you see a login the first time and then you are "logged in" for the remainder of your visit is because your browser hides that implementation detail for you.
Imagine if your browser asked you for your username and password each and every time you clicked on a link when you think you are logged in. That's the way it actually works, except your browser automatically retransmits the authentication using the information you typed in at the beginning of your session.
Basically it makes no sense to "drop the credentials server-side" because it's the client that continues to authenticate, over and over again, and the server has no official way of stopping it as per the spec.
Why I hate text files for a text-based article:
It's like running Windows -- if you install acroread instead of a DECENT PDF VIEWER, you've got nobody but yourself to blame, so QUITCHERBITCHEN!
'runs as user NOBODY'
Perchild MPM, which lets apache run as the user owning NN vhost has been all-but dropped.
A few other guys have (kind of) picked it back up again, and gotten it to (mostly) work, but it doesn't scale well, yet... (barfs at 256 hosts)
Why can't somebody get this to work? (I would, but I'm not a c coder)
I have no problem with your religion until you decide it's reason to deprive others of the truth.
A few issues:
::sigh:: file seems to be written by a 14 year old, even though it has Asbury College written all over it. Maybe he should start using ISS?
1) "Can I please reload my configuration file
without restarting my server?"
There would be issues opening/closing the sessions in which people would get screwed over anyway.
2) "Why do I have to set up two separate vhosts
for http://example.com/ and https:///
example.com/ when they're the same
website?"
Well, because they should be different sites. Why would you have secure content being fed over an unencrypted route? Are you stupid or just want to dick around with your website?
3) "Why isn't there a simple "log out" method for
Basic authentication? We've only been asking
for it since 1993."
Is there an accepted standard yet? This is in the docs, btw.
4) "Come on folks. Netscape added client-side
image maps in 1995!"
Silly to support, but why should someone just drop support for a functionality when there's no reason to?
I would go on, but this PDF
So every time I start trying to hack together an Apache config file, then setup the .htaccess, and then...well, about that time I say awfuckit
and just grab one of those dusty old code nuggets
and roll my own. its actually faster to setup that way...and possibly more secure, since I hardwire the pages/images/etc.
Apache performance can't be beat ('cept maybe for the kernel-embedded HTTP server, can't recall the name), but the config process is way too damn difficult for something with such a simple protocol; hell, I can completely reconfig a UNIX kernel more reliably, and in less time, than configing Apache.
007: "Who are you?"
Pussy: "My name is Pussy Galore."
007: "I must be dreaming..."
At least Rich Bowen is qualified to make these arguments.
One things I would have added to his list.
* Why can't we finish the perchild or metux MPMs sometime soon so that PHP can run as the damn user.
I got two emails today from customers who have trouble using PHP applications in safe mode. Fucking lame programmers.
Ever notice how when you tell people to go to "foo.com", everyone has their own way of doing it? Some people have been rigorously trained to go to "www.foo.com" every time. Some even add the http. Some will go to "www.foo.org.com" if you tell them to go to "foo.org". Some will simply type "foo.com" or even "foo" and let Internet Exploder figure it out for them -- at least they'll get an interesting MSN search out of it.
Some websites have only one of "foo.com" or "www.foo.com". Most support either way, but don't actually redirect the client, so that if I go to "www.foo.com" one day and "foo.com" another day, neither my browser cache nor my proxy cache will save me any bandwidth or time on that one.
Some will even completely block one of those two -- either "foo.com" or "www.foo.com" will work for one of these sites, but not both.
Now, I think the "www." convention is getting a bit absurd. If a site is really big enough to have a separate server for "www." and "ftp." and "smtp." and "imap.", then surely they can afford to put a box at "foo.com" to issue a permanent redirect to web browsers, at least. (ftp, smtp, and imap won't have humans guessing at server names.)
For my own site, I wanted a rule that catches www.* and issues a permanent redirect to the browser, pointing them to the domain without the 'www' attached. Since I had two or three domains hosted on this box, I wanted to do it globally.
The only sane way to do this with Apache as it is today was:
RewriteCond %{HTTP_HOST} ^www.* [NC]
RewriteMap www prg:/etc/apache2/conf/rewrite/www.pl
RewriteRule (.*) http:///{www:%{HTTP_HOST}}$1 [R]
And, in www.pl:
#!/usr/bin/perl
$| = 1;
while () {
$_ =~ s/^www\.//;
print $_;
}
Everything about this is stupid and absurd. I shouldn't have to use such a crude hack to get such a simple result, but I also shouldn't need to get that result in the first place. I think we need to kill ALL the TLDs. I want to be able to just buy "foo", and people type "foo" into their browser, and it sends them to me. No more 'www', no more '.com' -- it's redundant. If you're using HTTP, you probably want the World Wide Web, and if the hostname is "wallmart", then obviously it's a commercial entity.
Don't thank God, thank a doctor!
I also agree on mod_rewrite. Don't go into unless you are very comfortable with regexps. However, if you know its limitations, have a clear idea of what you want to do, you'll save yourself tons of trouble trying to make it do something that it can't. The Apache people know it, but it's just too useful to screw with. From the project's own site:I don't see the problem with Apache's config file. It's one of the easiest to configure, since it's all in one file. Or you can split it if you want. And it's a snap to replicate that config across lots of boxes. It has also undergone considerable pruning over the years, and it's not that hard to understand. There are numberous, well-written, freely-available articles on the subject, so it should be no mystery. Maybe Apache Group should consider making a rapid config tool and selling support?
I'm on the fence about applying a config live. It would add a lot of logic and bugs to correct a minor inconvenience. Back in the day when there was all that min/max spares/threads/servers BS, I can see why you wouldn't want to restart a heavily-used box, but you really only need to avoid a handful of no-noes to get decent performance now.
I don't know, Apache has it's quirks, and I put up with the sluggish performance from the 1.3 branch (notably on Windows) because it was the most broadly supported, but I'm no IIS man. Its layout seems bizarre to me, especially configuring it for https. Now that Apache 2 is humming along quite nicely, I'm happy.
Fred
"A fool and his freedom are soon parted"
-RMS
I actually tried to do this when our site still used that form of authentication. It doesn't really work and it's confusing to the user.
Remember that authentication of the sort under discussion is under control of the browser; the potential solution you've described is trying to "fool" the browser into failing.
What actually happened with the browsers I used for testing was:
1) the browser pops up a new request for a username and password. Even with instructions on the previous page, this was very confusing for the user.
2) unless the user actually typed in a valid username and password combination (i.e., one that returns a "good" result to the browser) the browsers I used for testing did not forget the old password! But most users wouldn't do that; first, because it required following instructions that are no longer visible, and really, why should they? That's an ugly hack. Most of the time they just hit cancel and go somewhere else; but now that browser is not logged out, because nothing has replaced the known-working username/password for that realm.
But even if it works in some browsers, you'd be relying on browser behavior that is not, as far as I know, required as part of the standard. That was the main reason I gave up; it just wasn't likely to be a reliable solution over time even if it had been a reliable solution then.
Jerry
http://bancomicsans.com/home.html
Yup. News for nerds, alright.
The brief flash of acrobat-induced rage has passed.
I kinda see his point, but the problem is those config directives were written evolutionarily, and almost never changed again. Maybe we should have a new config system with an import option for the old stuff. Sendmail is similar, but with m4 they can keep a (somewhat) more sane config system with less effort because the app doesn't process the config data itself and the script can be edited easily (vs changing source).
Honestly, it's not a problem for most people because once you've spent the 15 minutes/4 hours/5 days setting it up, you don't have to do it again, hopefully ever. So, 10 points for fire-and-forget, -900 for learning curve and ease of updating as your needs change.
BTW, should be on the list:
I used to use apache configs that didn't change much once I had them up and running, but I always ended up having to add something just after all the crap i relearned from the last update was washed out of my head by new info, hallucinogenic chemicals, horrible new sci-fi b movies, etc, so i had to relearn half of that damn config file like 10 times so far. almost makes you want to fire up iis (just kidding, do not flame!)
oh, and mod_php is a pain if you don't have a package to install from, i remember having to bypass a lot of features in apache a few times to get apache to recognize php files as mime x-application/php, outside of extensions there isn't a good way to specify that easily.
The first rule of USENET is you do not talk about USENET.
It would be nice if it had a web-based front-end similar to how PhpMyAdmin is often used as a front-end to MySql. Then again, if the web-server won't start, you can't have a web-front end. Tcl/Tk front end?
Table-ized A.I.
Anyone else notice that the PDF's file size is 666 KB?
If you mod me down, I shall become less powerful than you could possibly imagine.
You'd think that the bullet point "Yes, I know. I wrote that line in the docs. It's still really irritating" in the presentation might have clued the (grand)parent in that Bowen was on the Apache team...
You thought he would actually read it?
I'm a good cook. I'm a fantastic eater. - Steven Brust
no, it's not by aol (nee naviserver; renamed when aol bought it)
...and obviously it scales like crazy; aol eats their dogfood
it's quite slick and doesn't have many if any of the problems listed in TFA
Making them work correctly is both tedious and mysterious, requiring unintuitive inputs which often produce unexpected results.
At least with Apache, you'd think someone could create a GUI application that would spit out an Apache configuration file; after all, the configuration file is just glorified data storage.
I'll pay big money for someone who can write a GUI application for interfacing with my wife.
paintball
Done and done.
This problem is *everywhere*. Why are we still putting up with differently-designed config files for your webserver, your ftp server, your mailserver, your nameserver and heaven knows what else, all supported by their own pieces of custom code which, like Apache's, each have the possibility of growing up to be subtly wrong?
I know the Windows idea of a centralised registry sucks in too many ways (inscrutable binary is no match for human-readable text files), but there's one thing it's got right: all the apps which access their configuration use a consistent API to do so. Is it an impossible dream to hope that someone gets a bunch of large free software projects to agree on what needs to go into a libconfigparse, then implements it, and provides bindings for major languages? Then we might stand a chance of avoiding weird config file problems cropping up in Apache and everywhere else, slightly differently each time.
GROGGS: alive and well and living in
Man, the comments are way off the rails on PDF readers. Funny. So, back on topic... the PDF mentions one of my big problems with the current apache
2 GB file limit
Why, oh why? It's 2005! Makes throwing video around a bit limited. Please, good Apache people, make this a priority!
I've seen IIS sites handle a /.ing fine, I've seen Apache dragged to the dirt. Why? Well /.ing kills sites one of two ways:
/.ing isn't at all impressive, it's expected. Any webserver worth it's shit should be able to had out massive amounts of data with little resource usage. It's other processing like PERL scripts, DB requests, SSL, etc that kill it, or simply overtaxing the available bandwidth.
1) Bandwidth. Whatever if being offered is large enough that the line it's on becomes highly over saturated and thus requests are processed very slowly, if at all.
2) CPU load due to dynamic content. Sites that use databases, or scripts to create their pages or something get overwhelemed because they don't have enough CPU to support all the requests.
The webserver itself isn't the problem. Either Apache or IIS can easily saturate a 100mb link with static content, even on a fairly old server.
When I worked for the school paper and we were linked, it was no problem at all. The line was 10mb, and the content was fairly small (say 300-500k total) and all static. Despite being a P2 300 the server didn't even break a sweat, load average was below 1. When the department I now work at was receantly linked for a comet simulator, it killed out webserver, despite the content being about 2k and it being a fiarly fast SPARC machine. The reason was each request required computation, so our load average was about 100.
Apache being able to survive a
Bandwidth is actually fairly common, many servers are run on small lines. I have a couple servers in my closet on my 768k up line. That is plenty for normal usage, people find the sites quite zippy. However Slashdot would easily overwhelm that bandwidth.
This was at an apache conference. He's written documentation for Apache. Chances are he uses it and knows more about it than you ever will. Dumbass.
A good number of OSS zealots (of which a good number are found here) have the need to believe that OSS is always better, in every case, and part of that is not admitting faults. You admit faults, you admit the possibility something else could be done better.
I got in to that some time ago over audio apps in Linux. I mentioned that one of the reasons I run Windows is pro audio work, Linux just doens't have the tools. I was told ya it does, so I asked like what? I mean hey, maybe they know something I don't, I'm always looking for new tools. No, I get pointed to the same ones I've tried. So I talk about what is wrong with them, why I don't like them. In response basically every flaw is downloayed, denied, blamed on me, or declared to be "a better way of doing things".
Zealots, of whatever type, want to believe their product/way of life/whatever is the best there is. Thus when presented with real criticism, they are likely to either ignore it, or try and change the argument to something else.
Some would also say that such an occurrence would be the seventh sign....
Check out my sci-fi/humor trilogy at PatriotsBooks.
The attitude that so many have of "If you don't like it, fix it yorself!" That's a very harmful attitude to take, it's very abrasive and turns many people off to OSS.
I mean you have to remember, that most of the people in the world CAN'T, even if they want to, because they aren't coders. The majority of the population, well over 90%, does not know how to program. It's stupid to say they should learn how to. The whole point of specialization of labour is that peopel dont' ahve to do everything. Coders code, other peopel use what they make.
Then, of the few that can code, most don't have the time. It's a serious undertaking to make major changes to make major changes to a codebase, and it's really har dwhen it's not yours. You have to spend a lot of time just in learning what the fuck is going on and hwo it all works, before you can start making changes. Well, most coders can't do that, espically for every product they happen to use. There a fixed amount of time, and most of us have most of it taken up by more important things (like a paying job, family time, housework, etc).
Then, even if you do have the ability and time, it's not always easy. I'd not the guy that gave this presentation is an Apache developer, so he IS putting his money where his mouth is. It's just pretty clear that making tha fixes isn't some little 1 hour coding job, it's some major work that needs to happen.
So really, people who want to push OSS shouldn't take this isntantly hostile "Well fix it yourself!" attitude. Problems should be listend to, and should be fixed when possible. When it's not, the reasons should be explained why, and the person should be helped to figure out how ot work with what they have as best as possible.
Oh, and having configured both IIS and Apache, IIS wins hands down. Easy GUI config, options do what you think they do, plenty of context sensitive documentation. That's not to say it's a better web server, and sure as hell not more secure, but when it comes to configuration, that's just no contest.
Seriously though, for a lot of tasks these days I use the more lightweight thttpd daemon. Uber-simple config files, very low overhead, supports per-URL throttling out of the box. It's superb for image servers, or pretty much any application where you don't need dynamic pages - and believe me, there are still plenty of places you don't need dynamic code.
Blaming GW Bush for the Iraq war is like blaming Ronald McDonald for the poor quality of food.
Cool. I'll add them here.
What part of "gestalt" don't you understand?
Their server is supposed to have been built from the ground up for pure speed and runs on most *nix os's. http://www.zeus.com/products/zws/index.html
Is wisptis.exe a Windows thing? I believe it's a part of Adobe, because this task is running only when I use Acrobat7
:-)
My solution was to switch to Acrobat5 - it loads FAST, and is very responsive... The only drawback is that I get a warning that says that the doc I'm about to open contains things which are not supported by my viewer. Well, regardless of that, I can still view PDF's, avoid wisptis.exe, and I can't make myself a cup of tea while Acrobat loads
Does anyone have a list of NEW things in Acrobat 7? All I noticed was the amount of bloat, which is directly proportional to the version number; some interface changes... But still, I can do with Acrobat5 everything I was doing with Acrobat7, and the same applies to the good old Acrobat3.
The saddest poem
First, we have this.
And a quote from the default config file:OK. So I'll define as follows:Then, we have this.
OK, so I have some legacy documents, so I'll just define as follows in <HEAD>:And let's try it out... WTF?? It does not work! My browser thinks it is UTF-8.
Oh wait, it actually works, if I'll define this instead of that above:Brilliant! So if the AddDefaultCharset is defined in httpd.conf, the Content-Type encoding of the actual document must be defined in lowercase, or it'll be ingnored! Now, where the f*** this is documented??! Examples at w3.org specifically uses uppercase. Apache permits uppercase in httpd.conf.
Apache messed it up again.
“Wait for Hurd if you want something real” –Linus
I look forward to a rival project providing some realistic competition.
I can see the PDF quite well in FireFox with just adobe installed, but my PC is pretty old, and it takes ages for the pdf to display all the pretty images in the PDF, and when I scroll down, it starts to redraw all again.
I was pretty grateful for the "karma-whoring" plain text copy of the pdf today.
I'm still trying to figure out what people mean by 'social skills' here.
Evince came with FC4. It's much faster than xpdf for me, and has a cuter name.
Man, not a single insightful comment about Apache or what Rich said.
WTF?
Nice piece of humor.
It would be nice if the rest of the Apache team gets the message and changes some things.
For the record: I've been professionally doing webstuff since 1999 and still haven't mastered Apache. It's noticeable at every end that it's concepts are 10 years old at least.
We suffer more in our imagination than in reality. - Seneca
glad to know i'm not the only one who gets lost and confused every time i try to twiddle apache config. some sanity, consistency and useful error messages would do wonders. it's frustrating to know that you CAN do just about anything with apache and not be able to figure out how.
-- Moderation in all things, exceptions to all rules --
Have you checked to see whether uppercase charsets were ignored anyway (before you set AddDefaultCharset)? Remember the default charset is iso-8859-1 so you will have to use another one.
As it turns out this isn't the whole truth (there can be heuristics) but what you are doing is rather dicey (read as: may give different results in different browsers or in the future). Make your charsets agree or you might cause yourself problems.
I'm not 100% clear on what you are after but don't things like suphp and cgiwrap allow you to use a system binary but have users run the scripts under their own uid?
BTW, another option is 3) Escalate priviledge for scripts through setuid binaries (but this carries its own risks).
I think the point is many people run their (desktop) firewalls in a stateful "let anything out, and let anything in associated with outgoing connection back" manner so passive does appear to solve the problem for them.
Just to be awkward though, I prefer my huge files to be served via rsync.
I didn't know so that's why I asked : ) That original Latin-1 behaviour sounds "correct" though. You might want to see my other comment on how HTTP charsets are supposed to take priority.
Am I right?
Read a little closer. He's complaining about one command being case sensitive.
Yay me!
I've just done a few tests and the only time the charset in content-type was not the specified one was when apache returned a redirect to another document (e.g. the case when you have a directory but you leave off the trailing slash). To the best of my knowledge Apache does not look within files before deciding what HTTP charset to send - it is purely done by file extension.
If the HTTP charset IS changing by document contents it might be because you have a proxy trying to do something clever to the headers between you and the server.
I don't want to detract from your main point (which is that configuration is hard) but can't they pay someone else to do the forking? Who says that everyone has to be programmer in order to have their own fork?
Having formerly dealt with MS IIS servers I've come to embrace the granularity of configuring an Apache server.
Virtual Hosts, Redirects, etc. are easy if you read throught he config file. Granted, it is getting a little long and should be separated into different config area files.
Caudium also has a feature which is unique among the web servers - the supports database. Supports is a mechanism through which you are able to detect what features are or are not supported by the browser viewing your page. It allows one to create sites which use no JavaScript for browser detection. The visitor is handed clean and compact HTML pages not cluttered with JavaScript code. No need to mention that this feature makes the site far more browser-independent and flexible than when JavaScript is used to perform the tasks mentioned above.
Uh, what is this, 2001? What sites DON'T use jscript these days? You HAVE to use it for some cool stuff. I personally really like jscript so this was a pretty big turnoff for me, as I don't see that as an advantage. I'm definitely a thick-client type of guy these days...
Here is a, uh, rather ambivalent look at Comic Sans by its designer, Vincent Connare.
Apparently, he saw Times New Roman used as the font for speech balloons in Microsoft Bob, which he thought was a terrible misuse of the font. So he designed a new font, Comic Sans, for those speech balloons. From the article:
though some might hate PDF-files the word should be use cautiosly when the filesize implies a number that want to make us feel hatred!
For those of us young enough to be really confused by that conversation, some extensive googlage (define: abends didn't work) yielded this definition from Novell:
"Abnormal + End = AbEnd
NT server abends are usually called General Protection Faults (GPF) or Blue Screen of Death"
PowerPoint, Impress, or otherwise, most slide generators will export to HTML as well, either with graphics or just plain text. Would be preferable to PDF IMO.
As for PPT, among my favorite viewers is (I'm serious) strings. Usually strips off all the nonprintable crud, you get just the raw text. Has a remarkably high success rate.
What part of "gestalt" don't you understand?
Apache is only as useful as the user of it and it may suck to some, but ISS is still the biggest pile of shit webserver out!
For the record, the talk was created in Keynote, which will export to a variety of formats. PDF seemed like the least problematic of those formats. I don't use PowerPoint.
Thanks for all the great feedback from folks about my complaints and examples. Yes, it was more than a little tongue-in-cheek, and several of these problems have in fact already been fixed - a couple of them right there are the conference.
And, I'm not *just* complaining. I fixed the "Require User" case sensitivity thing, and I'm rewriting the mod_rewrite docs.
Apache guy, Open Source enthusiast, runner
yeah, and have the other httpd people were in the room: nobody disagreed. It was one of the funniest and best presentations all week.
Apachecon had a session where speakers were picked on a lottery, 5 minutes talk, no slides.
rich cheated on the slideware by unplugging the clock laptop, sticking in his mac and flipping through the slides, getting through it with 20s to spare. So it wouldnt be too big a download to see the presentation, which was primarily a brief critique of the configuration options of httpd, aimed at many of the developers in the room. Who all laughed.
The problem is with the interface. Why hasn't anyone done a frontend for apache's http.conf. PLEASE MOD ME ACCORDINGLY (Praying it will be redundant, so at least I can tell if there is a GUI solution to http.conf)
Have you tasted their tacos?
I think they're worth the risk.
deathly funny. love to hate relationship, eh?
~jaime~
domspe.org
I am so tired of using Apache I am no doubt moving on to many problems and bugs.
just a test asdf
Wish I could have been there to hear this little tid bit. I have been working with Apache for over 10 years now and I am sure I could have added atleast an hour of little anoyuances and frustrations to his list. But I cant complain by working with computers and Apache I have been able to provide for my family which I ll take working in a air condtion room anytime compared to my old job of road construction.
apachectl -k graceful
or on some versions of apache simply
apachectl graceful
or perhaps apachectl2
groklaw, wired and slashdot. The holy trinity of work based time wasting.
Unless this whole thing is a joke, I've gotten that example of an IP based virtual host to work fine on my system. using 1.x or 2.x. I run that and two name based Vhosts on the same IP and port and they all work fine. I did this as a hacking filter and it works great. OK, granted, it took some testing and thought to get it to work, but it does.
How about thttpd? It is used by a lot of companies to serve static content where Apache would be overwhelmed.
cpghost at Cordula's Web.