I’ve just spent the better part of, oh, say, 20 minutes, slamming my head over and over again into the wall that are the WordPress rewrite rules. What I’m struggling with is that WordPress seems to be sweeping up all the requests that aren’t actual files or directories.

More specifically, I’m trying to get an SVN repository set up at /svn. You can view it in a browser and check out the repository, but I kept getting 404 messages when I tried to commit to the repository. After a bit of troubleshooting, it turns out that SVN uses URL’s like this for committing and whatever else:


Of course, this file/directory doesn’t exist, so WordPress sweeps it up and shows my lovely 404 page. So I tried some magic with RewriteCond to ignore all requests that begin with /svn. I tried every combination I could think of — no cigar.

Unfortunately, I still haven’t found a solution yet. I’m sure it’s something very, very simple I’m missing (the order of the rules, etc.) but I’m completely done with mod_rewrite and Apache today. So, once and for all: I hate WordPress’ greedy rewrite rules. At least I have for the past 20 minutes.

(Oh, and on another slightly related note, Dreamhost’s automatic SVN creation absolutely rocks.)

Update: Well, screw that. I gave up and just used


  • I may have to resort to doing that, as mod_rewrite is really, really getting on my nerves. The DNS is already propagated, so I’ll probably end up doing that. There must be a way around this, though. Whatever.

  • I played around with it a little and wasn’t able to get a RewriteCond to work properly. That’s probably more of a sign of my lack of experience with regex than anything else, but still…