О системе
У меня есть URL-адреса этого формата в моем проекте: -
http://project_name/browse_by_exam/type/tutor_search/keyword/class/new_search/1/search_exam/0/search_subject/0
Где пара ключевое слово / класс означает поиск по ключевому слову "class".
У меня есть общий файл index.php, который выполняется для каждого модуля в проекте.Существует только правило перезаписи для удаления index.php из URL: -
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]
Я использую urlencode () при подготовке поискового URL и urldecode () при чтении поискового URL.
Проблема
Только символ прямой косой черты нарушает работу URL, вызывая ошибку 404 страница не найдена.Например, если я ищу one/two
URL-адрес
http://project_name/browse_by_exam/type/tutor_search/keyword/one%2Ftwo/new_search/1/search_exam/0/search_subject/0/page_sort/
Как это исправить?Мне нужно, чтобы index.php был скрыт в URL.В противном случае, если бы в этом не было необходимости, не было бы проблем с косой чертой, и я мог бы использовать этот URL: -
http://project_name/index.php?browse_by_exam/type/tutor_search/keyword/one
%2Ftwo/new_search/1/search_exam/0/search_subject/0