В фактическом URL вы должны использовать &
для разделения аргументов (и &
при отображении их в XHTML).Однако ;
не должен быть недействительным, поскольку он также является допустимым разделителем параметров GET.
Регулярное выражение, которое вы задаете в своем вопросе, должно разрешать точки с запятой, если вы измените его на ...
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\?=-;';
То есть предполагается, что приведенная выше строка подставляется в диапазон символов, например, [...]
.