Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Special characters on URL

Status
Not open for further replies.

gopikn

Programmer
Nov 26, 2008
2
US
There has been some problems that shows up, when we are having special charcters on URL like %20. Whenever a page that has special charcters in URL, it ends up with Internal server error. I checked it by disabling the .htccess file, but that even doesn't work. It is not comming from the .htaccess file.

This is how our system works(Drupal):
For the authentication, we are using siteminder. Which check with one of our LDAP server to retreive information. For the purpose of this, we are having a revere proxy server. Along with that, there are some security implemented validations on the reverse proxy server / siteminder. One of that is the checking if there are any special characters on the URL. This list of characters is blocking the site from showing up and showing Internal server error.

Comming to issue:
When a request is been made( having some %20 on URL or any other), it first hits the revers proxy and then redirected to apache server. The apache serves the page to reverse proxy. When it comes to reverse proxy, it is not able to identify "%20" on URL. It takes them as three seperate characters as %, 2 and 0. There is something going on which the apache server that does this splitting. On reverse proxy "%" is a bad character but not "%20". Thus ending up with an internal server error.

The best part is that, there are some other projects running using the same siteminder in asp. For it also, we are using the same bad character url's. Over there it works fine as reverse proxy is able to identify "%20".

I hope this problem is something relating to PHP or Apache server. Any input to this is very helpful.

 
The %20 is a "space" in the URL. Can that be eliminated?

Mark
 
%20 is blank, it is a standard encoding of the URL. What type of reverse proxy are you using?
 
Kozusnik: For the pages that we are creating, it is possible to eliminate the spaces. But there are some properties of the tool that creates it own url. Like the search page. If the user enters a search keyword like "test test" (words having space), then the url would be something like "search/node/test%20test". The user entered keyword is added to the url. We are unable to edit the code to change this(converting spaces to `+`) as they need to be changed on core files of product, which affects the product support and future updates.

elgrandeperro : We are using apache webserver as reverse proxy. As said, the reverse proxy is not able to understand %20 as such. Rather it is counting each character and showing that % is not allowed. We think it is something that web server is manipulating and sending it to reverse proxy.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top