O ?
será considerado como parâmetro, pois o pedido será considerado como HTML string de consulta . Você precisa codificar os símbolos especiais para que eles sejam tratados como caracteres e não partes de comando.
Melhor ainda, use nomes de arquivos sensatos.