#
не является допустимым символом в URI запроса. Символ #
обозначает начало фрагмента URL.
Когда вы обращаетесь к URL с помощью #
, URI обрезается браузером до #
перед отправкой на сервер. Серверы никогда этого не видят - это только для использования на стороне клиента.
Таким образом, он недействителен при проверке работоспособности, и сервер правильно отклонил его как 400 Bad Request
. Получите доступ к URL-адресу на вашем сайте с фрагментом из браузера, и вы заметите, что #
не зарегистрирован веб-сервером, потому что браузер не отправляет его.
Если по какой-то причине вам действительно нужен кодированный #
URL-адрес, он будет записан как %23
, но я бы не ожидал, что это то, что вы ищете.