| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Администрирование Web серверов и Web служб > Как разрешить символ * в URL? |
| Автор: Tellurian 25.4.2010, 20:51 |
| Мой сайт размещён на IIS 5.1. К сайту приходит запрос вида http://localhost:8080/test/test*. До обработчика запросов дело не доходит, выдаёться ошибка 400 Bad Request. Может кто сталкивался с такой проблемой? |
| Автор: Tellurian 28.4.2010, 15:27 |
| Может это невозможно? |
| Автор: bars80080 1.5.2010, 21:13 |
| не помню, чтобы в урлах вообще * передавалась. если вы формируете запрос, закодируйте * в соответствующую урл-сущность (в пхп, к примеру, это делается функцией rawurlencode()) |
| Автор: Tellurian 2.5.2010, 17:26 |
| Проблема в том, что мне уже такой запрос передают. И я никак не могу переубедить заказчика - что это сделать невозможно. |
| Автор: bars80080 2.5.2010, 20:03 |
| в смысле не удаётся? он никогда не слышал о масках поиска файлов, где ? - один символ, а * - много символов? расскажите самый простой и доходчивый пример, который вы ему можете привести - предложите ему переименовать любой файл на его компе (под виндой). пусть попробует ввести *. тогда он увидит список запрещённых символов *, ?, <, >, |, /, \, " вот и скажите, что эти символы служебные и их использование требует особого обращения. к примеру, двоеточие не в служебном смысле можно употреблять только в строке поиска после знака ?. а иногда их просто невозможно использовать, как в этом случае в конце концов, если ему так надо отдать этот символ, пусть урл-кодирует. это вообще нормальная практика, когда передаваемый пользовательский текст полностью подвергается кодированию, дабы запрос не стал колом, как в этом случае |
| Автор: Tellurian 3.5.2010, 20:51 |
| to bars80080 Спасибо за помощь. Пришлось прервать общение с заказчиком. Он не согласился со моим мнением Нашел другого программиста, который сможет решить этот вопрос. Обещал по окончанию работ написать, как решилась проблема. Так что ждём ответа. |