Slashdot Mirror


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."

32 of 558 comments (clear)

  1. Whoops by bigwavejas · · Score: 4, Insightful

    I think the subject was supposed to read, "Why I hate PDF files."

    --
    "Simplify, simplify, simplify!" Thoreau
    1. Re:Whoops by inKubus · · Score: 4, Funny

      Yeah, I think they will find some new reasons to hate Apache in about 3 minutes...

      Coral Cache of the PDF...

      --
      Cool! Amazing Toys.
    2. Re:Whoops by bersl2 · · Score: 4, Funny

      That's funny; I though it was entitled "Why I love xpdf." I wonder what could have given me such a strange notion...

    3. Re:Whoops by arcanumas · · Score: 4, Informative
      Ah, what you want is the PDF Download firefox extension.

      When you click on a pdf it displays a choice of opening it in a new tab, downloading it , or viewing it as HTML (which i think uses google, but i could be wrong because i never use this option)
      It really saved me.

      --
      Slashdot Sig. version 0.1alpha. Use at your own risk.
  2. Why I hate PDFs by Anonymous Coward · · Score: 5, Funny

    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.

  3. A 666KB PDF... by Virak · · Score: 5, Funny

    Coincidence? I think not!

  4. You might hate Apache but.... by chrispyman · · Score: 4, Insightful

    atleast a decent Apache install can keep on chugging along even when faced with a slashdotting.

    1. Re:You might hate Apache but.... by jadavis · · Score: 4, Insightful

      My main complaint about Apache is that it makes it difficult to divide up users' dynamic content.

      If one user wants mod_perl, one wants php, and one wants mod_ruby, you pretty much have to have different webservers running, which means an administrative hassle and separate IPs.

      There are a couple solutions I can think of:
      (1) Change unix user permissions after it's selected a vhost, but before running any code or accessing files. Not just for CGIs, either, but modules.
      (2) Make it easier to run seperate webservers as if they are one. Basically take the administrative hassle out of running multiple webservers.

      Right now ISPs basically just offer PHP and use safe mode. But that doesn't help other languages, and it's basically a php hack.

      It would also be nice if problems with one vhost didn't prevent the entire server from reloading the config. It should give a nasty error maybe, but the webserver shouldn't shut down the working vhosts, at worst it should leave it as it was before the reload.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
  5. Christ, stop complaining about the PDF by sockonafish · · Score: 4, Insightful

    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.

    1. Re:Christ, stop complaining about the PDF by sockonafish · · Score: 4, Funny

      I rescind my earlier statement. That's a really bad PDF. If PDFs were a food, that PDF would be shit-stewed haggis.

    2. Re:Christ, stop complaining about the PDF by Baloo+Ursidae · · Score: 4, Funny

      Hey! Don't knock the haggis! Instead, knock something that really *is* shit stewed, like Jack in the Box. They've had 12 E. coli outbreaks that I can remember in 10 years, and that's only counting locations near me...

      --
      Help us build a better map!
  6. News for nerds by ShieldW0lf · · Score: 4, Funny

    News for Nerds

    Wow, you ain't fuckin kidding, are ya?

    --
    -1 Uncomfortable Truth
  7. How to fund Apache improvements by joelparker · · Score: 4, Interesting
    I worked at Sun and tried to fund Apache improvements to make it smoother for my team's webmasters. No luck.

    Apache is great but it could be *significantly* easier for beginning webmasters. And for companies to fund changes.

  8. Re:is this the internet ? by Rosco+P.+Coltrane · · Score: 4, Insightful

    Don't be silly. PDF files are very useful to distribute printable materials, such as books, spec sheets, PR and corporate bullshit (ugh), brochures, etc... Remember that PDF is essentially Postscript wrapped in an Adobe straightjacket.

    What does piss me off is:

    - People who use PDFs to make read-only documents
    - People who use PDFs where html or text is adequat and sufficient.

    I don't see why they require me to lauch that hateful Acrobat Reader when a browser does a better job.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  9. Wow, beautiful by legLess · · Score: 4, Funny

    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."
  10. Re:The 2G file limit... by Burdell · · Score: 4, Insightful
    HTTP doesn't really have much to do with hypertext. A small percentage of the bits transferred via HTTP are text/html (think images, flash and java, and of course PDFs). In many ways, HTTP is a better file download protocol than FTP:
    • doesn't need a second port for transfers (so no firewall "fun")
    • byte ranges allow a client to only request part of the file (great for file completions)
    • easier to do per site, per directory, or per file authentication (since authentication is per request, not per "session")
  11. Re:Those PDF's again... aaargh by Virak · · Score: 4, Informative

    Well, until they feel like adding a PDF warning, you should get the PDF Download extension for firefox. It's small, simple, and prevents PDF ambushes from raping your system's resources.

  12. Re:Those PDF's again... aaargh by Linus+Torvaalds · · Score: 4, Insightful

    I suspect most people here are able to position the cursor over the article link and look in the status bar, note the .pdf at the end of the URL, and know that this is a PDF.

    Assuming they are able to do it is one thing. Expecting them to do it every time they follow a link is another thing entirely.

  13. Comic Sans is..... by Anonymous Coward · · Score: 5, Funny

    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

  14. Re:Those PDF's again... aaargh by cortana · · Score: 5, Informative

    Put this in your userContent.css:

    a[href$=".pdf"]:after {
    font-size: smaller;
    content: " [pdf]";
    }

    I also find the following useful:

    :link[target="_blank"]:after, :visited[target="_blank"]:after,
    :link[target="_new"]:after, :visited[target="_new"]:after
    {
    font-size: smaller;
    content: " [new]";
    }

    a[href^="javascript:"]:after
    {
    font-size: smaller;
    content: " [shite]";
    }

  15. Re:Those PDF's again... aaargh by Penguin · · Score: 4, Insightful

    But... Why would you have your browser opening the file directly without asking you, if you don't like that behaviour?

    It's not like it's a HTML page with a lot of process consuming javascript, java-that-requires-a-lot-of-loading-of-the-java-en gine or the like. It's a totally different content type. You have every way of choosing what to do with it.

    Instead you choose to be annoyed. I don't get it.

    --
    - Peter Brodersen; professional nerd
  16. This is what the open source community needs... by j1m+5n0w · · Score: 4, Insightful
    More people who complain loudly when something doesn't work the way it should. I applaud Rich Bowen for this honest critique of Apache configuration, and I hope more people do the same for their favorite open source projects. Sometimes, that's the only way things get fixed.

    I'm also a big fan of the "Grumpy Editor's Guide" series of articles at Linux Weekly News.

  17. Re:The 2G file limit... by HrothgarReborn · · Score: 4, Insightful

    PASSV does NOT fix this. Passive still uses second ports it just changes the direction of the connection. On all firewalls you have to load extra stuff to properly allow the connection to work or fully open all outbound traffic. On IP Tables there is an ftp_contrack module to load, on PIX there is a fixup protocol to load. The fact is FTP is the most broken protocol there is. There is no reason that everything cannot be handled over a single port and the security issues involving race conditions, bounce scans, clear text sign on and transfer, are unacceptable. The ONLY thing going for it is tradition.

  18. Re:Couple of comments by DennyK · · Score: 4, Insightful

    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.

    This one baffled me as well. How could you have a "logout" function in a stateless protocol? Logins don't persist beyond the fulfillment of a single request. The storing of a username and password for HTTP authentication is implemented on the client side, it has nothing to do with the web server or even the protocol. Complain to Microsoft/Mozilla/Opera Software or whoever makes your browser if you don't like it.

  19. Why I hate the Apache Web Server by dfn5 · · Score: 4, Funny
    The reason I hate the Apache Web Server is that it lacks a right click properties and I can't start it with the press of a "play" button.

    --
    -- Thou hast strayed far from the path of the Avatar.
    1. Re:Why I hate the Apache Web Server by Mattintosh · · Score: 4, Funny

      Umm... Were you born that wrong, or did you learn your ways over time?

      Install Apache (1.3 or 2.0) on Windows sometime. If you open up Computer Management (quite possibly the best and maybe even the only good feature of Windows) and go to the Services section, you'll find Apache in the list. Select it. Now, at the top of the window, there's a button with a "play" arrow. Click it. Wow! Apache started! Next to that, there's a "stop" square. Next is a "pause" double bar. Last in line is a "restart" square/arrow combo. All of these work with Apache.

      Another poster mentioned the Apache Service Monitor tool. It's handy if you have more than one server around, since it lets you control them remotely without hassle. It too has the start/stop/restart buttons.

      And again, on Windows... Look in your Start menu. Apache creates a program group during installation that contains a Control Apache Server folder, in which you'll find some batch files... One for Stop Apache Server, one for Start Apache Server, and one for Restart Apache Server.

      There are plenty of "stupid" ways of running apachectl -whatever in Windows. But only the first one above allows you to right click and go to properties. And guess what you find in that properties window... Yeah. [Start] [Stop] [Pause] [Resume] - More buttons. But only stupid newbies would use those, right?

      (Before you reply to this assuming that I'm serious, I'd like to present you with a gift: A nice, shiny, new electric sarcasm carving knife.)

  20. Thanks for the laugh and the PDF by Kalak · · Score: 4, Insightful

    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 .hack)
  21. Re:Those PDF's again... aaargh by Wolf+nipple+chips · · Score: 5, Informative
    For anybody willing to make comments on the content instead of the form, here it is :

    Why I Hate The Apache Web Server
    Lessons learned from IRC - Rich Bowen
    Note: Opinions expressed are those of our users, as expressed on IRC. The goal of this talk is to make people aware of things which those "outside" see as problems, but which we tend to be so used to that we don't see at all. If I get carried away, feel free to throw fruit.

    Why do I hate thee? Let me count the reasons.
    - Fragile
    - Confusing
    - Missing stuff that EVERYONE asks for

    Fragile
    - Breaks easily. Small changes have big results

    Options +Indexes Includes MultiViews
    Options Indexes Includes Multiviews

    The first of these forbids Indexes. The second one permits them. Huh?

    Disclaimer
    "But that's not supported syntax!"
    Then it should throw an error and break, not do something utterly unexpected. Unfortunately, several major Linux distros ship with this broken-but-almost-looks-right configuration, or variants thereof

    Example 2
    Vhosts ... wow, don't get me started

    # My IP address is 192.168.1.200
    NameVirtualHost *:80
    <VirtualHost 192.168.1.200:80>
    ...
    </VirtualHost>

    That vhost is silently ignored. Yeah. That's intuitive.

    Discussion
    "But the docs say not to do that!" Yes, I know. I wrote that line in the docs. It's still really irritating.

    Another ...

    Require Valid-user

    Unlike every other Apache config setting, "Require" is case sensitive, so that's not valid valid_user would be nice too. Oh, and "Require User" and "Require Group" don't work either.

    Missing (asked daily on IRC)
    - Can I set a variable and use it later?
    - Can I have an if/else syntax?
    - Can I please reload my configuration file without restarting my server?
    - How do I make ServerTokens return "Bob's Handy Dandy HTTP Server"? (Yes, this is silly, but it would sure shut a lot of people up finally.)

    What else? mod_imap: how many of you have actually used that module? How many of you who are not committers know what it does? Why is it on by default? Come on folks. Netscape added client-side image maps in 1995!

    And while we're on the topic mod_cern_meta: Who even knows what this module does? For the record, yes, I do. But I doubt any of you have ever used it.

    CONFUSING
    NumServers ServerLimit ThreadLimit ThreadsPerChild StartThreads StartServers MaxSpareThreads MinSpareServers MaxSpareServers MinSpareThreads MaxClients MaxThreadsPerChild MaxRequestsPerChild MaxRequestsPerThread ThreadStackSize
    Oh sweet God make it stop

    What's that directive called?
    RLimitMem, RLimitCPU, RLimitNProc? I have to look these up every time. Of course, since they don't seem to do what the docs say, maybe that's not a bad thing.

    Am I running out of time yet?
    - Why do I have to set up two separate vhosts for http://example.com/ and https://example.com/ when they're the same website?
    - Why are dynamic vhosts so darned hard?
    - Why doesn't the default configuration file match the "security tips" document?

    mod_rewrite
    I probably don't need to say anything more than just "mod_rewrite". But I will: "Voodoo" and "... flexibility of sendmail". The docs practically scream "GO AWAY!"

    RewriteMap
    Nice, but have you ever found an actual useful example? Oh, and the example script for generating db map files doesn't actually work. (Note: Paul fixed this 2 weeks ago. See httxt2dbd)

    How about this?
    If I want these two aliases to work, I have to:

    Alias /foo/bar

    --
    Nothing is foolproof to a sufficiently talented fool.
  22. Look you lot, he's not some ignorant ranter. by swmccracken · · Score: 4, Insightful

    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.

  23. General-purpose config file parsing by marnanel · · Score: 4, Insightful
    His later points are pretty Apache-specific, but most of the early stuff (if-else, variables, case sensitivity, and so on) are all symptoms of trying to produce an ad hoc implementation of a general coding problem-- config file parsing-- instead of doing it just once in a library.

    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
  24. No supprise by Sycraft-fu · · Score: 4, Insightful

    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.

  25. And this is one of the WORST parts of OSS by Sycraft-fu · · Score: 5, Insightful

    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.