title: urlencoded Forward slash is breaking URL
body: <p><strong>About the system</strong></p>
  
  <p>I have URLs of this format in my project:-</p>
  
  <pre><code>http://project_name/browse_by_exam/type/tutor_search/keyword/class/new_search/1/search_exam/0/search_subject/0
  </code></pre>
  
  <p>Where keyword/class pair means search with "class" keyword.</p>
  
  <p>I have a common index.php file which executes for every module in the project. There is only a rewrite rule to remove the index.php from URL:-</p>
  
  <pre><code>RewriteCond $1 !^(index\.php|resources|robots\.txt)
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php [L,QSA]
  </code></pre>
  
  <p>I am using urlencode() while preparing the search URL and urldecode() while reading the search URL.</p>
  
  <p><strong>Problem</strong></p>
  
  <p>Only the forward slash character is breaking URLs causing 404 page not found error. 
  For example, if I search <code>one/two</code> the URL is </p>
  
  <pre><code>http://project_name/browse_by_exam/type/tutor_search/keyword/one%2Ftwo/new_search/1/search_exam/0/search_subject/0/page_sort/
  </code></pre>
  
  <p>How do I fix this? I need to keep index.php hidden in the URL. Otherwise, if that was not needed, there would have been no problem with forward slash and I could have used this URL:-</p>
  
  <pre><code>http://project_name/index.php?browse_by_exam/type/tutor_search/keyword/one
  %2Ftwo/new_search/1/search_exam/0/search_subject/0
  </code></pre>