Had the same problem using a different port for Oxwall (custom port like 81, 8080, etc)
Solved it by editing:
The order for the 'port' is wrong here. This is the way it worked for me:
return $requestUrlArray['scheme'] . '://' . $requestUrlArray['host'] .
( empty($requestUrlArray['port']) ? '' : ':' . (int) $requestUrlArray['port'] ) .
( empty($requestUrlArray['path']) ? '' : $requestUrlArray['path'] ) .
'?' . http_build_query($currentParams) .
( $anchor === null ? '' : '#' . trim($anchor) );
This also resolved all other points of the software where miserably failed to build a correct URL with a custom, different port: changing page language, some admin links and functions, etc.
Hope it helps and developers correct that for next version..