Server error 503 and % in URLs

Some of the links on my site ( links from the search results page) recently stopped working with a 503 error "Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. ".

I have tracked this down to me using % as parameter values in URLs. Take them out and it works fine. This behaviour has only just appeared. Have DreamHost changed some server or php settings anywhere? And is there an easy way to get around it as it’ll be a pig to change all my code.



% should be escaped (as “%”) in URLs - can you give a more specific example of what your URL is like?

Deja vu.

I already answered this question, probably got lost in the flood of the messages.

error 503 and %

Short answer: need to fix your PHP scripts.

:cool: Perl / MySQL / HTML+CSS

this has nothing to do with php as I ran into the same error with a perl script which had been happy as a lark for 2 years. For some undocumented reason, the servers aren’t accepting certain characters in the input strings. my hitch was a null character (percent sign followed by 2 zeros) which my perl script was using as a separating character. The script would run fine from the command line using the character but not via the web.

I’m having this same problem off and on as well. Can someone please help me along with what it might be?

Have you tried a urlencode to see if it will handle the % character.

It may be mod_security (the Extra Web Security checkbox in the panel) getting upset over what it sees as a potentially malicious query string. Escape that percentage sign!

That’d certainly explain what testboy saw - a null in a query string is almost universally an attempt to do Bad Things.