The complete adaptive compensation of unknown disturbances for uncertain nonlinear output feedback systems is studied. The unknown disturbances are generated from an unknown linear exosystem whose order is assumed known and the eigenvalues are distinct. The uncertainty of the system is characterised by unknown constant parameters contained in a vector. The uncertainties in the nonlinear system and the uncertainties in the exosystem are tackled concurrently. The proposed control design is able to completely adaptively compensate for the disturbances without knowing their amplitudes, frequencies and phases, as long as the number of different frequency components in the disturbances is known. A new control strategy, different from the current ones for output regulation with adaptive internal models, is proposed, which results in the direct estimation of all original unknown parameters in the system and the removal of the restriction imposed by the current methods that all the nonlinear functions must be polynomials of the system output. The completely new design of additional filters makes it possible to adaptively tackle the concurrent uncertainties in the system and the exosystem.